User presence-enabled tracking device functionality

ABSTRACT

A tracking system can provide configuration instructions to an electronic device based on user presence. The tracking system can determine a user&#39;s location relative to a geographic boundary surrounding a geographic area associated with the user. Depending on the user&#39;s location, the tracking system may send instructions to configure an electronic device to send a notification or change the operating mode of the electronic device in response to the user&#39;s presence. The electronic device may be a scanning device that is configured to have a higher or lower scanning frequency, depending on the presence or absence of the user relative to the scanning device.

CROSS REFERENCE TO RELATED APPLICATIONS

This application is a Continuation of co-pending U.S. application Ser.No. 16/265,813 filed Feb. 1, 2019, which is incorporated by reference inits entirety.

BACKGROUND

This disclosure relates generally to tracking devices, and morespecifically, to configuring a state of a device based on a location ofa user associated with a tracking device.

Users can attach tracking devices to one or more personal objects, suchas keys, a phone, a car, a briefcase, and the like. The tracking devicecan communicatively couple to a mobile device of the user (or of acommunity member), and the mobile device can, in response to receiving acommunication from the tracking device, determine a location of themobile device (for instance, via a GPS receiver). The mobile device canthen provide an identifier for the tracking device and the determinedlocation of the mobile device to a cloud server, which can associate thetracking device with the determined location of the mobile device.

Tracking devices may move around with a user as they go about theirdaily activities, for instance when coupled to a laptop or included in awallet. Users often have daily routines that may be evident from theirlocation history. For example, a user's child, who carries a trackingdevice, may return home from school at a specific time each day and maytext the user to let the user know he or she arrived home safely.However, this routine requires a proactive action on behalf of thechild, and thus may inadvertently be forgotten. Thus, there is a need tobe able to automatically perform actions, such as configuring a state ofan electronic device, based on a location of a user or a position of theuser within a routine.

SUMMARY

A tracking system can provide configuration information to electronicdevices based on a presence or absence of a user or a tracking deviceassociated with a user. A user can attach a tracking device to orenclose a tracking device in an object, such as a wallet, keys, a car, abike, a pet, or any other object that the user wants to track. The usercan then use a mobile device (e.g., by way of a software applicationinstalled on the mobile device) or other device or service to connect tothe tracking device. Additionally, the user can designate a geographicboundary and an associated configuration for an electronic device basedon a location of the tracking device relative to the geographicboundary.

The tracking system can also configure electronic devices other than amobile device. For example, once a user enters or exits a locationbounded by a geographic boundary, a tracking system may send aninstruction to turn on or off an electronic device within the geographicboundary. In some embodiments, the tracking system may configure anoperating mode of multiple electronic devices within the boundary, suchas a security system, a set-top box, a thermostat, or a scanning device,such as a tracking device hub or a smartphone or other mobile device.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 illustrates an example tracking system environment in which atracking device can operate, according to one embodiment.

FIG. 2 illustrates an example tracking system for use in a trackingsystem environment, according to one embodiment.

FIG. 3 illustrates an example user mobile device for use in a trackingsystem environment, according to one embodiment.

FIG. 4 illustrates an example community mobile device for use in atracking system environment, according to one embodiment.

FIG. 5 illustrates an example tracking device for use in a trackingsystem environment, according to one embodiment.

FIG. 6 illustrates a flowchart for a method of identifying a trackingdevice as potentially lost based on a threshold distance from a targetdevice, according to one embodiment.

FIG. 7 illustrates a flowchart for a method of identifying a trackingdevice as potentially lost based on a threshold distance from ageographic location, according to one embodiment.

FIG. 8 illustrates a flowchart for a method of identifying a trackingdevice as potentially lost based on historical movement behavior,according to one embodiment.

FIG. 9 illustrates a flowchart for a method of identifying a trackingdevice as potentially useful to user based on external data, accordingto one embodiment.

FIG. 10 illustrates a flowchart for a method of identifying a trackingdevice as potentially lost based on sensor data, according to oneembodiment.

FIG. 11 illustrates a flowchart for a method of generating an opt-innotification for identifying a tracking device as potentially lost,according to one embodiment.

FIGS. 12A and 12B illustrate an example of configuring an electronicdevice based on the entry of a user into an area defined by a geographicboundary, according to one embodiment.

FIG. 13 illustrates a flowchart for a method of configuring anelectronic device based on a location of a user.

FIG. 14 illustrates a flowchart for a method of configuring a scanningdevice based on a location of a user.

The figures depict various embodiments of the present invention forpurposes of illustration only. One skilled in the art will readilyrecognize from the following discussion that alternative embodiments ofthe structures and methods illustrated herein may be employed withoutdeparting from the principles of the invention described herein.

DETAILED DESCRIPTION

Environment Overview

Embodiments described herein detail functionality associated with atracking device. A user can attach a tracking device to or enclose thetracking device within an object, such as a wallet, keys, a car, a bike,a pet, or any other object that the user wants to track. The user canthen use a mobile device (e.g., by way of a software applicationinstalled on the mobile device) or other device or service to track thetracking device and corresponding object. For example, the mobile devicecan perform a local search for a tracking device attached to a near-byobject. However, in situations where the user is unable to locate thetracking device using their own mobile device (e.g., if the trackingdevice is beyond a distance within which the mobile device and thetracking device can communicate), the user can leverage the capabilitiesof a community of users of a tracking device system.

In particular, a tracking system (also referred to herein as a “cloudserver” or simply “server”) can maintain user profiles associated with aplurality of users of the tracking device system. The tracking systemcan associate each user within the system with one or more trackingdevices associated the user (e.g., tracking devices that the user haspurchased and is using to track objects owned by the user). If theuser's object becomes lost or stolen, the user can send an indicationthat the tracking device is lost to the tracking system, which is incommunication with one or more mobile devices associated with thecommunity of users in communication with the system. The tracking systemcan set a flag indicating the tracking device is lost. When one of acommunity of mobile devices that are scanning for nearby trackingdevices and providing updated locations to the tracking systemidentifies a flagged tracking device, the tracking system can associatethe received location with the flagged tracking device, and relay thelocation to a user of the tracking device, thereby enabling the user tolocate the lost tracking device.

FIG. 1 illustrates an example tracking system environment in which atracking device can operate, according to one embodiment. Theenvironment of FIG. 1 includes a tracking system 100 communicativelycoupled to a mobile device 102 associated with the user 103 via a firstnetwork 108. The tracking system 100 is also communicatively coupled toa plurality of community mobile devices 104 a through 104 n(collectively referred to herein as “community mobile devices 104”)associated with a plurality of users 105 a through 105 n of the trackingsystem 100 (collectively referred to herein as “community users 105”)via the first network 108. As will be explained in more detail below,the tracking system 100 can allow the user 103 to manage and/or locate atracking device 106 associated with the user 103. In some embodiments,the tracking system 100 leverages the capabilities of community mobiledevices 104 to locate the tracking device 106 if the location of thetracking device is unknown to the user 103 and beyond the capabilitiesof mobile device 102 to track. In some configurations, the user 103 mayown and register multiple tracking devices 106. Although FIG. 1illustrates a particular arrangement of the tracking system 100, mobiledevice 102, community mobile devices 104, and tracking device 106,various additional arrangements are possible. FIG. 1 also illustrates anexternal data source 112 that is communicatively coupled to the trackingsystem 100 to provide additional, external data to the tracking system100, as is discussed further below. Examples of external data sourcesinclude: social networking systems, messaging systems, calendaringsystems, banking systems, budgeting systems, vendor systems, onlineretailers, parking regulation databases, weather service, travel agency,transportation services, ride-sharing systems, geo-locating systems,contact management systems, and the like.

In some configurations, the user 103 may be part of the community ofusers 105. Further, one or more users 105 may own and register one ormore tracking devices 106. Thus, any one of the users within thecommunity of users 105 can communicate with tracking system 100 andleverage the capabilities of the community of users 105 in addition tothe user 103 to locate a tracking device 106 that has been lost.

The tracking system 100, mobile device 102, and plurality of communitymobile devices 104 may communicate using any communication platforms andtechnologies suitable for transporting data and/or communicationsignals, including known communication technologies, devices, media, andprotocols supportive of remote data communications.

In certain embodiments, the tracking system 100, mobile device 102, andcommunity mobile devices 104 may communicate via a network 108, whichmay include one or more networks, including, but not limited to,wireless networks (e.g., wireless communication networks), mobiletelephone networks (e.g., cellular telephone networks), closedcommunication networks, open communication networks, satellite networks,navigation networks, broadband networks, narrowband networks, theInternet, local area networks, and any other networks capable ofcarrying data and/or communications signals between the tracking system100, mobile device 102, and community mobile devices 104. The mobiledevice 102 and community of mobile devices 104 may also be incommunication with a tracking device 106 via a second network 110. Thesecond network 110 may be a similar or different type of network as thefirst network 108. In some embodiments, the second network 110 comprisesa wireless network with a limited communication range, such as aBluetooth or Bluetooth Low Energy (BLE) wireless network. In someconfigurations, the second network 110 is a point-to-point networkincluding the tracking device 106 and one or more mobile devices thatfall within a proximity of the tracking device 106. In such embodiments,the mobile device 102 and community mobile devices 104 may only be ableto communicate with the tracking device 106 if they are within a closeproximity to the tracking device, though in other embodiments, thetracking device can use long-distance communication functionality (forinstance, a GSM transceiver) to communicate with either a mobile device102/104 or the tracking system 100 at any distance. In someconfigurations, the mobile device 102 and one or more community mobiledevices 104 may each be associated with multiple tracking devicesassociated with various users.

As mentioned above, FIG. 1 illustrates the mobile device 102 associatedwith the user 103. The mobile device 102 can be configured to performone or more functions described herein with respect to locating trackingdevices (e.g., tracking device 106). For example, the mobile device 102can receive input from the user 103 representative of information aboutthe user 103 and information about a tracking device 106. The mobiledevice 102 may then provide the received user information, trackingdevice information, and/or information about the mobile device 102 tothe tracking system 100. Accordingly, the tracking system 100 is able toassociate the mobile device 102, the user 103, and/or the trackingdevice 106 with one another. In some embodiments, the mobile device 102can communicate with the tracking device 106 and provide informationregarding the location of the tracking device to the user 103. Forexample, the mobile device 102 can detect a communication signal fromthe tracking device 106 (e.g., by way of second network 110) as well asa strength of the communication signal or other measure of proximity todetermine an approximate distance (and/or a relative direction) betweenthe mobile device 102 and the tracking device 106. The mobile device 102can then provide this information to the user 103 (e.g., by way of oneor more graphical user interfaces) to assist the user 103 to locate thetracking device 106. Accordingly, the user 103 can use the mobile device102 to track and locate the tracking device 106 and a correspondingobject associated with the tracking device 106. If the mobile device 102is located beyond the immediate range of communication with the trackingdevice 106 (e.g., beyond the second network 110), the mobile device 102can be configured to send an indication that a tracking device 106 islost to the tracking system 100, requesting assistance in finding thetracking device. The mobile device 102 can send an indication of a lostdevice in response to a command from the user 103. For example, once theuser 103 has determined that the tracking device 106 is lost, the usercan provide user input to the mobile device 102 (e.g., by way of agraphical user interface), requesting that the mobile device 102 send anindication that the tracking device 106 is lost to the tracking system100. In some examples, the lost indication can include informationidentifying the user 103 (e.g., name, username, authenticationinformation), information associated with the mobile device 102 (e.g., amobile phone number), information associated with the tracking device(e.g., a unique tracking device identifier), or a location of the user(e.g., a GPS location of the mobile device 102 at the time the requestis sent).

The tracking system 100 can be configured to provide a number offeatures and services associated with the tracking and management of aplurality of tracking devices and/or users associated with the trackingdevices. For example, the tracking system 100 can manage informationand/or user profiles associated with user 103 and community users 105.In particular, the tracking system 100 can manage information associatedwith the tracking device 106 and/or other tracking devices associatedwith the user 103 and/or the community users 105.

As mentioned above, the tracking system 100 can receive an indicationthat the tracking device 106 is lost from the mobile device 102. Thetracking system 100 can then process the indication in order to help theuser 103 find the tracking device 106. For example, the tracking system100 can leverage the capabilities of the community mobile devices 104 tohelp find the tracking device 106. In particular, the tracking system100 may set a flag for a tracking device 106 to indicate that thetracking device 106 lost and monitor communications received from thecommunity mobile devices 104 indicating the location of one or moretracking devices 106 within proximity of the community mobile devices104. The tracking system 100 can determine whether a specific locationis associated with the lost tracking device 106 and provide any locationupdates associated with the tracking device 106 to the mobile device102. In one example, the tracking system may receive constant updates oftracking device 106 locations regardless of whether a tracking device106 is lost and provide a most recent updated location of the trackingdevice 106 in response to receiving an indication that the trackingdevice 106 is lost.

In some configurations, the tracking system 100 can send a locationrequest associated with the tracking device 106 to each of the communitymobile devices 104. The location request can include any instructionsand/or information necessary for the community mobile devices 106 tofind the tracking device 102. For example, the location request caninclude a unique identifier associated with the tracking device 106 thatcan be used by the community mobile devices 104 to identify the trackingdevice 106. Accordingly, if one of the community mobile devices 104detects a communication from the tracking device 106 (e.g., if thecommunity mobile device 104 is within range or moves within range of thecommunication capabilities of the tracking device 106 and receives asignal from the tracking device 106 including or associated with theunique identifier associated with the tracking device 106), thecommunity mobile device 104 can inform the tracking system 100. Usingthe information received from the community mobile devices 104, thetracking system 100 can inform the user (e.g., by way of the mobiledevice 102) of a potential location of the tracking device 106.

As shown in FIG. 1 and as mentioned above, the tracking system 100 cancommunicate with a plurality of community mobile devices 104 associatedwith corresponding community users 105. For example, an implementationmay include a first community mobile device 104 a associated with afirst community user 105 a, a second community mobile device 104 bassociated with a second community user 105 b, and additionalcommunication mobile devices associated with additional community usersup to an nth community mobile device 104 n associated with an nthcommunity user 105 n. The community mobile devices 104 may also includefunctionality that enables each community mobile device 104 to identifya tracking device 106 within a proximity of the community mobile device104. In one example, a first community mobile device 104 a withinproximity of a tracking device 106 can communicate with the trackingdevice 106, identify the tracking device 106 (e.g., using a uniqueidentifier associated with the tracking device 106), and/or detect alocation associated with the tracking device 106 (e.g., a location ofthe first mobile community device 104 a at the time of the communicationwith the tracking device 106). This information can be used to provideupdated locations and/or respond to a location request from the trackingsystem 100 regarding the tracking device 106. In some embodiments, thesteps performed by the first community mobile device 104 a can be hiddenfrom the first community user 105 a. Accordingly, the first communitymobile device 104 a can assist in locating the tracking device 106without bother and without the knowledge of the first community user 105a.

As mentioned above, the tracking system 100 can assist a user 103 inlocating a tracking device 106. The tracking device may be a chip, tile,tag, or other device for housing circuitry and that may be attached toor enclosed within an object such as a wallet, keys, purse, car, orother object that the user 103 may track. Additionally, the trackingdevice 106 may include a speaker for emitting a sound and/or atransmitter for broadcasting a beacon. In one configuration, thetracking device 106 may periodically transmit a beacon signal that maybe detected using a nearby mobile device 102 and/or community mobiledevice 104. In some configurations, the tracking device 106 broadcasts abeacon at regular intervals (e.g., one second intervals) that may bedetected from a nearby mobile device (e.g., community mobile device104). The strength of the signal emitted from the tracking device 106may be used to determine a degree of proximity to the mobile device 102or community mobile device 104 that detects the signal. For example, ahigher strength signal would indicate a close proximity between thetracking device 106 and the mobile device 102 and a lower strengthsignal would indicate a more remote proximity between the trackingdevice 106 and the mobile device 102, though in some embodiments, thetracking device 106 can intentionally vary the transmission strength ofthe beacon signal. In some cases, the strength of signal or absence of asignal may be used to indicate that a tracking device 106 is lost.

System Overview

FIG. 2 illustrates an example tracking system for use in a trackingsystem environment, according to one embodiment. As shown, the trackingsystem 100 may include, but is not limited to, an association manager204, a tracking device location manager 206, a tracking deviceintervention manager 207, and a data manager 208, each of which may bein communication with one another using any suitable communicationtechnologies. It will be recognized that although managers 204-208 areshown to be separate in FIG. 2, any of the managers 204-208 may becombined into fewer managers, such as into a single manager, or dividedinto more managers as may serve a particular embodiment.

The association manager 204 may be configured to receive, transmit,obtain, and/or update information about a user 103 and/or informationabout one or more specific tracking devices (e.g., tracking device 106).In some configurations, the association manager 204 may associateinformation associated with a user 103 with information associated witha tracking device 106. For example, user information and trackinginformation may be obtained by way of a mobile device 102, and theassociation manager 204 may be used to link the user information andtracking information. The association between user 103 and trackingdevice 106 may be used for authentication purposes, or for storing userinformation, tracking device information, permissions, or otherinformation about a user 103 and/or tracking device 106 in a database.

The tracking system 100 also includes a tracking device location manager206. The tracking device location manager 206 may receive and process anindication that the tracking device 106 is lost from a mobile device(e.g., mobile device 102 or community mobile devices 104). For example,the tracking system 100 may receive a lost indication from a mobiledevice 102 indicating that the tracking device 106 is lost. The trackingdevice location manager 206 may set a flag on a database (e.g., trackerdatabase 212) indicating that the tracking device 106 is lost. Thetracking device location manager 206 may also query a database todetermine tracking information corresponding to the associated user 103and/or tracking device 106. The tracking system 100 may obtain trackingdevice information and provide the tracking device information or otherinformation associated with the tracking device 106 to a plurality ofcommunity mobile devices 104 to be on alert for the lost or unavailabletracking device 106.

The tracking device location manager 206 may also receive a locationfrom one or more community mobile devices 104 that detect the trackingdevice 106, for instance in response to the community mobile devicereceiving a beacon signal transmitted by the tracking device 106,without the tracking device 106 having been previously marked as lost.In such embodiments, a user corresponding to the mobile device 102 canrequest a most recent location associated with the tracking device fromthe tracking system 100, and the location manager 206 can provide thelocation received from the community mobile device for display by themobile device 102. In some embodiments, the location manager 206provides the location of the tracking device 106 received from acommunity mobile device either automatically (for instance if thetracking device 106 is marked as lost) or at the request of a user ofthe mobile device 102 (for instance, via an application on the mobiledevice 102). The location manager 206 can provide a location of atracking device 106 to a mobile device 102 via a text message, pushnotification, application notification, automated voice message, or anyother suitable form of communication.

The tracking device location manager 206 may further manage providingindications about whether a tracking device 106 is lost or no longerlost. For example, as discussed above, the tracking device locationmanager 206 may provide a location request to the community of mobiledevices 104 indicating that a tracking device 106 is lost. Additionally,upon location of the tracking device 106 by the user 103 or by one ofthe community of users 105, the tracking device location manager 206 mayprovide an indication to the user 103, community user 105, or trackingsystem 100 that the tracking device 106 has been found, thus removingany flags associated with a tracking device and/or canceling anylocation request previously provided to the community of users 105. Forexample, where a user 103 sends an indication that the tracking device106 is lost to the tracking system 100 and later finds the trackingdevice 106, the mobile device 102 may provide an indication to thetracking system 100 that the tracking device 106 has been found. Inresponse, the tracking device location manager 206 may remove a flagindicating that the tracking device 106 is lost and/or provide anupdated indication to the community of users 105 that the trackingdevice 106 has been found, thus canceling any instructions associatedwith the previously provided location request. In some configurations,the notification that the tracking device 106 has been found may beprovided automatically upon the mobile device 102 detecting the trackingdevice 106 within a proximity of the mobile device 102. Alternatively,the notification that the tracking device 106 has been found may beprovided by the user 103 via user input on the mobile device 102. Inanother example, a known user (e.g., a friend or family member) withwhom the tracking device 106 has been shared may provide an indicationthat the tracking device 106 has been found.

The tracking system 100 additionally includes a tracking deviceintervention manager 207. The tracking device intervention manager 207can identify whether a tracking device is lost or has been left behind,or can predict a state of the tracking device based on, for instance,the location of a tracking device relative to other tracking devices,the location of a tracking device relative to a user's phone, and thelocation of a tracking device relative to historical user data. When adevice is determined to be lost or left behind, or when a state of thetracking device has been predicted, the tracking device interventionmanager 207 can notify a user, for instance via a notification sent toand displayed by a mobile device 102 of the user. The tracking deviceintervention manager 207 is described below in greater detail.

The tracking system 100 additionally includes a data manager 208. Thedata manager 208 may store and manage information associated with users,mobile devices, tracking devices, permissions, location requests, andother data that may be stored and/or maintained in a database related toperforming location services of tracking devices. As shown, the datamanager 208 may include, but is not limited to, a user database 210, atracker database 212, permissions data 214, and location request data216. It will be recognized that although databases and data within thedata manager 208 are shown to be separate in FIG. 2, any of the userdatabase 210, tracker database 212, permissions data 214, and locationrequest data 216 may be combined in a single database or manager, ordivided into more databases or managers as may serve a particularembodiment.

The data manager 208 may include the user database 210. The userdatabase 210 may be used to store data related to various users. Forexample, the user database 210 may include data about the user 103 aswell as data about each user 105 in a community of users 105. Thecommunity of users 105 may include any user that has provided userinformation to the tracking system 100 via a mobile device 102, 104 orother electronic device. The user information may be associated with oneor more respective tracking devices 106, or may be stored without anassociation to a particular tracking device. For example, a communityuser 105 may provide user information and permit performance of trackingfunctions on the community mobile device 104 without owning or beingassociated with a tracking device 106. The user database 210 may alsoinclude information about one or more mobile devices or other electronicdevices associated with a particular user.

The data manager 208 may also include a tracker database 212. Thetracker database 212 may be used to store data related to trackingdevices. For example, the tracker database 212 may include tracking datafor any tracking device 106 that has been registered with the trackingsystem 100. Tracking data may include unique tracker identifications(IDs) associated with individual tracking devices 106. Tracker IDs maybe associated with a respective user 103. Tracker IDs may also beassociated with multiple users. Additionally, the tracker database 212may include any flags or other indications associated with whether aspecific tracking device 106 has been indicated as lost and whether anyincoming communications with regard to that tracking device 106 shouldbe processed based on the presence of a flag associated with thetracking device 106.

The data manager 208 may further include permissions data 214 andlocation request data 216. Permissions data 214 may include levels ofpermissions associated with a particular user 103 and/or tracking device106. For example, permissions data 214 may include additional users thathave been indicated as sharing a tracking device 106, or who have beengiven permission to locate or receive a location of a tracking device106. Location request data 216 may include information related to alocation request or a lost indication received from the user 103 via amobile device 102.

FIG. 3 illustrates an example user mobile device for use in a trackingsystem environment, according to one embodiment. As shown, the mobiledevice 102 may include, but is not limited to, a user interface manager302, a location request manager 304, a database manager 306, a trackingmanager 308, and an intervention engine 340, each of which may be incommunication with one another using any suitable communicationtechnologies. It will be recognized that although managers 302-308 areshown to be separate in FIG. 3, any of the managers 302-308 may becombined into fewer managers, such as into a single manager, or dividedinto more managers as may serve a particular embodiment.

As will be explained in more detail below, the mobile device 102includes the user interface manager 302. The user interface manager 302may facilitate providing the user 103 access to data on a trackingsystem 100 and/or providing data to the tracking system 100. Further,the user interface manager 302 provides a user interface by which theuser 103 may communicate with tracking system 100 and/or tracking device106 via mobile device 102. For example, the user interface manager 302can facilitate the providing of power settings to the tracking device106 for power management on the tracking device 106 by the user 103.

The mobile device 102 may also include a location request manager 304.The location request manager 304 may receive and process a request inputto the mobile device 102 to send an indication that a tracking device106 is lost to a tracking system 100. For example, the user 103 mayprovide an indication that a tracking device 106 is lost, unreachable,or otherwise unavailable from the mobile device 102 via the userinterface manager 302, and the location request manager 304 may processthe lost indication and provide any necessary data to the trackingsystem 100 for processing and relaying a location request to other users105 over a network 108. In some configurations, an indication that atracking device 106 is lost is provided via user input. Alternatively,the indication may be transmitted automatically in response to themobile device 102 determining that a tracking device 106 is lost.

In addition, the location request manager 304 can request a location ofthe tracking device 106 without the tracking device 106 being identifiedas lost. For instance, a user can access a tracking device locationfeature of an application running on the mobile device 102 (for example,via the user interface manager 302), and the location request manager304 can request a most recent location of the tracking device 106 fromthe tracking system 100. The location request manager 304 can receivethe most recent location from the tracking system 100, and can displaythe most recent location via the user interface manager 302.

The mobile device 102 may also include a database manager 306. Thedatabase manager 306 may maintain data related to the user 103, trackingdevice 106, permissions, or other data that may be used for locating atracking device 106 and/or providing a request to a tracking system 100for locating one or more tracking devices 106 associated with the user103. Further, the database manager 306 may maintain any information thatmay be accessed using any other manager on the mobile device 102.

The mobile device 102 may further include a tracking manager 308. Thetracking manager 308 may include a tracking application (e.g., asoftware application) for communicating with and locating a trackingdevice 106 associated with the user 103. For example, the trackingmanager 308 may be one configuration of a tracking application installedon the mobile device 102 that provides the functionality for locating atracking device 106 and/or requesting location of a tracking device 106using a tracking system 100 and/or a plurality of community mobiledevices 104. As shown, the tracking manager 308 may include, but is notlimited to, a Bluetooth Low Energy (BLE) manager 310, a persistencemanager 312, a local files manager 314, a motion manager 316, a securestorage manager 318, a settings manager 320, a location manager 322, anetwork manager 324, a notification manager 326, a sound manager 328, afriends manager 330, a photo manager 332, an authentication manager 334,and a device manager 336. Thus, the tracking manager 308 may perform anyof the functions associated with managers 310-338, described inadditional detail below.

The BLE manager 310 may be used to manage communication with one or moretracking devices 106. The persistence manager 312 may be used to storelogical schema information that is relevant to the tracking manager 308.The local files manager 314 may be responsible for managing all filesthat are input or output from the mobile device 102. The motion manager316 may be responsible for all motion management required by thetracking manager 308. The secure storage manager 318 may be responsiblefor storage of secure data, including information such as passwords andprivate data that would be accessed through this sub-system. Thesettings manager 320 may be responsible for managing settings used bythe tracking manager 308. Such settings may be user controlled (e.g.,user settings) or defined by the tracking manager 308 for internal use(e.g., application settings) by a mobile device 102 and/or the trackingsystem 100. The location manager 322 may be responsible for all locationtracking done by the tracking manager 308. For example, the locationmanager 322 may manage access to the location services of the mobiledevice 102 and works in conjunction with other managers to persist data.The network manager 324 may be responsible for all Internetcommunications from the tracking manager 308. For example, the networkmanager 324 may mediate all Internet API calls for the tracking manager308. The notification manager 326 may be responsible for managing localand push notifications required by the tracking manager 308. The soundmanager 328 may be responsible for playback of audio cues by thetracking manager 308. The friends manager 330 may be responsible formanaging access to contacts and the user's social graph. The photomanager 332 may be responsible for capturing and managing photos used bythe tracking manager 308. The authentication manager 334 may beresponsible for handling the authentication (e.g., sign in or login) ofusers. The authentication manager 334 may also include registration(e.g., sign up) functionality. The authentication manager 334 furthercoordinates with other managers to achieve registration functionality.The device manager 336 may be responsible for managing the devicesdiscovered by the tracking manager 308. The device manager 336 mayfurther store and/or maintain the logic for algorithms related to devicediscovery and update.

The mobile device 102 may further include an intervention engine 340.The intervention engine 340 is configured to, in response to adetermination that a tracking device may be lost (or inadvertently leftbehind, misplaced, forgotten, stolen, etc.), notify a user that thetracking device may be lost or left behind. In some embodiments, thedetermination that the tracking device may be lost or left behind may bemade by the tracking system 100 and communicated to the mobile device102, may be made by a different tracking device and communicated to themobile device, or may be made by the intervention engine 340. Likewise,the intervention engine 340 is configured to, in response to predictinga state of the tracking device, notify a user of the tracking device ofthe predicted state of the tracking device. The state of the trackingdevice can be predicted by the tracking system 100 and communicated tothe mobile device 102, or may be made by the intervention engine 340.The intervention engine 340 can notify a user of the mobile device 102that a tracking device may be lost or left behind, or can notify theuser of the predicted state of the tracking device in a number of ways,for instance by displaying a notification within a graphicalnotification interface of the mobile device, by displaying a status ornotification within an application interface of the mobile device, byemitting an alarm or notification audio, or the like.

FIG. 4 illustrates an example community mobile device for use in atracking system environment, according to one embodiment. As shown, thecommunity mobile device 104 may include, but is not limited to, a userinterface manager 402, a tracking device manager 404, a database manager406, and a tracking manager 408, each of which may be in communicationwith one another using any suitable communication technologies. The userinterface manager 402, database manager 406, and tracking manager 408illustrated in FIG. 4 may include similar features and functionality asthe user interface manager 302, database manager 306, and trackingmanager 308 described above in connection with FIG. 3. It will berecognized that although managers 402-408 are shown to be separate inFIG. 4, any of the managers 402-408 may be combined into fewer managers,such as into a single manager, or divided into more managers as mayserve a particular embodiment.

The community mobile device 104 may include a tracking device manager404. The tracking device manager 404 may facilitate scanning for nearbytracking devices 106. In some configurations, the tracking devicemanager 404 can continuously or periodically scan (e.g., once persecond) for nearby tracking devices 106. The tracking device manager 404may determine whether to provide an updated location of the nearbytracking device 106 to the tracking system 100. In some configurations,the tracking device manager 404 provides a location of a nearby trackingdevice 106 automatically. Alternatively, the tracking device manager 404may determine whether the location of the tracking device 106 has beenrecently updated, and may determine whether to provide an updatedlocation based on the last time a location of the tracking device 106has been updated (e.g., by the community mobile device 104). Forexample, where the community mobile device 104 has provided a recentupdate of the location of a tracking device 106, the tracking devicemanager 404 may decide to wait a predetermined period of time (e.g., 5minutes) before providing an updated location of the same trackingdevice 106.

In one configuration, the tracking device manager 404 may receive andprocess a location request or other information relayed to the communitymobile device 104 by the tracking system 100. For example, the trackingdevice manager 404 may receive an indication of a tracking device 106that has been indicated as lost, and provide a location of the trackingdevice 106 if it comes within proximity of the community mobile device104. In some configurations, the community mobile device 104 isconstantly scanning nearby areas to determine if there is a trackingdevice 106 within a proximity of the community mobile device 104.Therefore, where a tracking device 106 that matches information providedby the tracking system 100 (e.g., from the location request) comeswithin proximity of the community mobile device 104, the tracking devicemanager 404 may generate and transmit a response to the location requestto the tracking system 100, which may be provided to the user 103associated with the tracking device 106. Further, generating andtransmitting the response to the tracking request may be conditioned onthe status of the tracking device 106 being flagged as lost by themobile device 102 and/or the tracking system 100.

The tracking device manager 404 may additionally provide otherinformation to the tracking system 100 in response to receiving thetracking request. For example, in addition to providing a location ofthe community mobile device 104, the tracking device manager may providea signal strength associated with the location to indicate a level ofproximity to the location of the community mobile device 104 provided tothe user 103. For example, if a signal strength is high, the locationprovided to the user 103 is likely to be more accurate than a locationaccompanied by a low signal strength. This may provide additionalinformation that the user 103 may find useful in determining the preciselocation of tracking device 106.

As described above, the tracking device manager 404 may determinewhether to send a location within the proximity of the tracking device106 to the tracking system 100. The determination of whether to send alocation to the tracking system 100 may be based on a variety offactors. For example, a tracking device manager 404 may determine tosend a location of the tracking device 106 to a tracking system 100based on whether the detected tracking device 106 has been indicated aslost or if a tracking request has been provided to the community mobiledevice 104 for the particular tracking device 106. In someconfigurations, the community mobile device 104 may send an update of alocation of a tracking device 106 even if the tracking device 106 is notassociated with a current tracking request or if the tracking device 106is not indicated as lost. For example, where the location of a trackingdevice 106 has not been updated for a predetermined period of time, thecommunity mobile device 104 may provide an update of a tracking devicelocation to the tracking system 100, regardless of whether a trackingrequest has been received.

In some configurations, the community mobile device 104 may includeadditional features. For example, the community mobile device 104 mayallow a tracking system 100 to snap and download a photo using photofunctionality of the community mobile device 104. In someconfigurations, this may be an opt-in feature by which a community user105 permits a tracking system 100 to take a snap-shot and possiblyprovide a visual image of an area within a proximity of the trackingdevice 106.

FIG. 5 illustrates an example tracking device for use in a trackingsystem environment, according to one embodiment. The tracking device 106of FIG. 5 includes an interface 502, a transceiver 504, a controller506, and one or more sensors 508. The transceiver 504 is a hardwarecircuit capable of both transmitting and receiving signals. It should benoted that in other embodiments, the tracking device 106 includes fewer,additional, or different components than those illustrated in FIG. 5.

The interface 502 provides a communicative interface between thetracking device 106 and one or more other devices, such as a mobiledevice 102. For instance, the interface 502 can instruct the transceiver504 to output beacon signals as described above (for example,periodically or in response to a triggering event, such as a detectedmovement of the tracking device 106). The interface 502 can, in responseto the receiving of signals by the transceiver 504 from, for instance,the mobile device 102, manage a pairing protocol to establish acommunicative connection between the tracking device 106 and the mobiledevice 102. As noted above, the transceiver 504 can include a BLEreceiver and transmitter, though in other embodiments, the transceiver504 enables communications via other suitable wireless connectionprotocols (such as WiFi, Global System for Mobile Communications or“GSM”, LTE, and the like). It should be noted that while variousexamples herein describe the transceiver 504 as a GSM receiver andtransmitter, this is done for the purposes of brevity, and it should beemphasized that the transceiver 504 can communicate over any otherwireless communication protocol according to the embodiments describedherein.

The controller 506 is a hardware chip that configures the trackingdevice 106 to perform one or more functions or to operate in one oroperating modes or states. For instance, the controller 506 canconfigure the interval at which the transceiver broadcasts beaconsignals, can authorize or prevent particular devices from pairing withthe tracking device 106 based on information received from the devicesand permissions stored at the tracking device, can increase or decreasethe transmission strength of signals broadcasted by the transceiver, canconfigure the interface to emit a ringtone or flash an LED light, canenable or disable various tracking device sensors, can enable or disablecommunicative functionality of the tracking device 106, can configurethe tracking device into a sleep mode or awake mode, can configure thetracking device into a power preservation mode, and the like. Thecontroller 506 can configure the tracking device to perform functions orto operate in a particular operating mode based on information orsignals received from a device paired with or attempting to pair withthe tracking device 106, based on an operating state or connection stateof the tracking device 106, based on user-selected settings, based oninformation stored at the tracking device 106, based on a detectedlocation of the tracking device 106, based on historical behavior of thetracking device 106 (such as a previous length of time the trackingdevice was configured to operate in a particular mode), based oninformation received from the sensors 508, or based on any othersuitable criteria.

The sensors 508 can include motion sensors (such as gyroscopes oraccelerators), altimeters, GPS transceivers, orientation sensors,proximity sensors, communication sensors, light sensors, temperaturesensors, pressure sensors, touch sensors, audio sensors, or any othersuitable sensor configured to detect an environment of the trackingdevice 106, a state of the tracking device 106, a movement or locationof the tracking device 106, and the like. The sensors 508 are configuredto provide information detected by the sensors to the controller 506,which in turn can provide the information detected by the sensors to amobile device 102 communicatively coupled to the tracking device 106.

Tracking Device Collection Overview

Tracking devices can be organized into collections of tracking devicesthat are commonly co-located, that may move similarly, that are oftenkept close together, that are used similarly or for a common purpose,that are attached to related or similar objects, that are associatedwith a common subject matter, or that behave in a similar way. As usedherein, a “collection” refers to a pre-determined set of trackingdevices. Collections of tracking devices can include one, two, or moretracking devices, and the identities of each collection and theidentities of the tracking devices within each collection can be storedwithin the tracker database 212, within a mobile device 102 of a userassociated with the collection, or any other suitable location.

Tracking device collections can be defined by users. For instance, auser can create a collection via an application interface or othermobile device interface, via a web page interface associated with thetracking system 100, or the like. The user can select a set of trackingdevices owned or managed by the user, can associate with the selectedtracking devices, and can name or otherwise identify the collection. Forinstance, the user can select tracking devices that are attached toobjects needed by the user for the user's job, can create a collectionof “work” tracking devices, and can name the collection, all via anapplication running on the user's mobile device 102. The mobile device102 can then communicate the defined collection to the tracking system100 for storage.

Alternatively, tracking device collections can be defined by thetracking system 100, based on common historical behavior/usage patternsassociated with a set of tracking devices. For instance, if a set oftracking devices (e.g., a first tracking device coupled to a user'swallet, a second to a user's ID badge, and a third to a user'sbriefcase) commonly accompanies a user from a home location to a worklocation weekday mornings, and likewise from the work location to thehome location weekday evenings, the set of tracking devices can begrouped together in a tracking device collection. As described above,tracking devices are coupled to objects, and the user can identify tothe tracking system 100 (for instance, via the mobile device 102) theidentity of the objects to which the tracking devices are attached.Accordingly, the tracking system 100 can define collections of trackingdevices based on the identified types of objects to which a set oftracking devices are coupled. For example, if a user identifies anobject to which a first tracking device is coupled as “luggage”, andidentifies an object to which a second tracking device is coupled as“passport”, the tracking system 100 can define a “travel” trackingdevice collection based on a pre-determined likelihood that a user'sluggage and passport are likely to be used together.

In some embodiments, the tracking system 100 can identify a candidatetracking device collection (e.g., by identifying a set of trackingdevices), and can present or suggest the candidate tracking devicecollection to a user (for instance, via the user's mobile device 102).For example, the travel system 100 can identify a set of trackingdevices that commonly move in conjunction with a user's car, and cansuggest a candidate “car” tracking device collection to the user. If theuser agrees to define a tracking device collection based on thepresented candidate tracking device collection, the tracking system 100can store the tracking device collection.

In some embodiments, the tracking system 100 can identify a candidatetracking device likely to be related to a defined tracking devicecollection, and can present or suggest the candidate tracking device tothe user to add to the tracking device collection. For example, if auser has defined a “travel” collection of tracking devices including apassport tracking device and luggage tracking device, and the trackingsystem 100 determines that a tracking device coupled to a camera bag iscommonly co-located with the passport and luggage (or moves inconjunction with the passport and luggage), then the tracking system cansuggest to the user (for instance, via the user's mobile device 102)that the user add the camera bag to the travel tracking devicecollection. If the user accepts the suggestion and adds the suggestedtracking device to the tracking device collection, the tracking system100 can update the stored tracking device collection to include thesuggested tracking device.

In some embodiments, an interface of the user's mobile device (such asan application interface, a web page interface, and the like) candisplay one or more tracking device collections to the user. Forinstance, the mobile device can display a selectable icon, button, ordisplay portion corresponding to the tracking device collection. When auser selects the tracking device collection, the mobile device canidentify tracking devices within the selected tracking devicecollection, and can display information associated with the identifiedtracking devices within the collection (such as location information,status information, information about the object to which the trackingdevice is coupled, and the like). For instance, the user can select a“work” tracking device collection from an interface of the applicationassociated with the tracking system 100, and the application can displayinformation associated with a first tracking device coupled to a user'skeys, a second tracking device coupled to the user's ID badge, and athird tracking device coupled to the user's briefcase.

Examples of tracking device collections include but are not limited to:

-   -   Car accessory tracking devices: a wallet, glasses, spare tire,        garage door remote control, parking pass, toll road/bridge        payment sensor, keys, phone charger, jumper cables, car jack,        auxiliary cable    -   Travel tracking devices: luggage, phone charger, laptop charger,        makeup/toiletry bag, passport, digital book/reader, computer,        tablet, phone, camera, headphones, airpods, water bottle,        jacket, pillow    -   Purse tracking devices: purse, wallet, checkbook, keys, pillbox    -   Work tracking devices: laptop, tablet, phone, ID badge,        headphones, wallet, briefcase    -   School tracking devices: backpack, lunch bag, laptop, books    -   Home tracking devices: remote control, safe, jewelry box, tools,        toolbox, artwork    -   Camping tracking devices: tent, sleeping bags, headlamp,        flashlight, lanterns, first aid kit    -   Skiing/snowboarding tracking devices: skis, snowboard, coat,        gloves, helmet, goggles, ski pass    -   Golf tracking devices: clubs, bag, shoes, hat    -   SCUBA tracking devices: fins, mask, tank, wetsuit, flashlight,        weight belt, buoyancy compensator    -   Art/antique tracking devices: tracking devices coupled to        artwork or antiques    -   Photography tracking devices: camera bag, camera, lenses,        tripods, flash gear    -   Public tracking devices: tracking devices coupled to buses, food        trucks, and the like    -   Computer/laptop accessories tracking devices: laptop, tablet,        charger, dongle, mouse, keyboard, monitors, external hard drive,        web camera    -   Tool tracking devices: hammer, screwdriver, wrench, saw, safety        glasses, tool box    -   Emergency supplies tracking devices: fire extinguisher, water        containers, canned foods, flashlights, emergency radio    -   Baby/child tracking devices: baby bag, diapers, toys, baby        powder, baby wipes, books, car seat, stroller, clothes    -   Gym tracking devices: gym shoes, gym bag, extra clothes, towel,        joint brace/support    -   Beach tracking devices: towel, sunscreen, beach umbrella, water        bottle, surfboard, cooler    -   Rain-gear tracking devices: jacket, hat, poncho, umbrella, rain        boots    -   Snow-gear tracking devices: jacket, hat, ear muffs, scarf    -   Warm-weather tracking devices: sunscreen, sunglasses, sandals,        water bottle    -   Valuable item tracking devices: Art, antique, television,        jewelry/jewelry box, safe, monitor, computer        Tracking Device Intervention Overview

As used herein, a tracking device “intervention” can refer to notifyinga user, owner, or manager of a tracking device that the tracking devicemay be lost, may be forgotten, or may be inadvertently left behind(collectively referred to as “potentially lost” hereinafter). In someembodiments, a tracking device intervention can refer to notifying auser of a predicted state or behavior of a tracking device (collectivelyreferred to as “predicted state” hereinafter). In each case, a trackingdevice is either identified as potentially lost or a state of thetracking device is predicted, and in response, a notification is sent toa user of the tracking device.

During the performance of a tracking device intervention, a user can benotified of the predicted state of the tracking device or that thetracking device is potentially lost via a mobile device 102, forinstance via a notification displayed within a mobile device orapplication interface, via an audio signal or vibration signal, and thelike. As also noted above, any of the tracking system 100, the mobiledevice 102, or a tracking device 106 can identify a tracking device ispotentially lost or can predict a state of the tracking device, thoughthe remainder of the description will refer to the tracking systemidentifying a tracking device as potentially lost for the purposes ofsimplicity.

A notification that a tracking device is potentially lost can includeinformation about a last known location of the tracking device (forinstance, displayed on a map displayed by a mobile device), can includeinformation identifying the tracking device (such as a name of thetracking device, the identity of the object to which the tracking deviceis attached, or an icon corresponding to the tracking device), caninclude information identifying a tracking device collection to whichthe tracking device belongs (such as a name of the tracking devicecollection or an icon corresponding to the tracking device collection),and can include text indicating why the tracking device is thought to belost or left behind (e.g., “you normally take your briefcase to workwith you, and you left it behind today”). A notification of a predictedstate of the tracking device can include information identifying thetracking device or a tracking device collection to which the trackingdevice belongs, can include information describing the predicted stateof the tracking device (e.g., “you might want to bring this trackingdevice with you before you leave for work”), and can include informationdescribing the circumstances under which the state of the trackingdevice is predicted (e.g., “it is warmer than normal outside today,don't forget to bring your water bottle”).

In some embodiments, a notification of a predicted state of the trackingdevice or identifying a tracking device as potentially lost can includean option to disregard the notification. For instance, if thenotification indicates that a tracking device is potentially lost, theuser can select an option displayed by or associated with thenotification to identify the tracking device as not lost. Likewise, ifthe notification indicates a predicted state of the tracking devicereminding a user to bring an object coupled to a particular trackingdevice, the user can select an option displayed by or associated withthe notification to disregard the reminder. Likewise, in someembodiments, a notification that a tracking device is identified aspotentially lost can include an option to confirm the tracking device aslost. In response to the selection of such an option by a user, thetracking system 100 can affirmatively classify the tracking device aslost according to the principles described herein.

The tracking system 100 can identify a tracking device 106 aspotentially lost or can predict a future state of the tracking devicebased on a number of factors, including but not limited to: a proximityof a tracking device to one or more additional tracking devices, aproximity of a tracking device to a user's mobile device, a movement ofa tracking device to more than a threshold distance away from a mobiledevice or one or more additional tracking devices, a location of atracking device relative to a particular or pre-defined geographiclocation (such as GPS coordinates, a user's home, a user's place ofemployment, etc.), a location of a tracking device relative toparticular or pre-defined geographic boundaries (such as boundarieswithin a map, property lines, and the like), based on a usage ormovement behavior of the tracking device, based on a usage or movementbehavior of a user or owner of a tracking device, based on informationreceived from an external source (for instance, via an API correspondingto the API), based on information received from sensors within thetracking device or a user's mobile device (such as motion sensors),based on a current time or date, based on a low battery level, based ona malfunction of the tracking device or a tracking device component, orbased on any other suitable factors. Circumstances in which the trackingsystem 100 can identify a tracking device 106 as potentially lost or canpredict a state of the tracking device are described in greater detailbelow.

Tracking device proximity: The tracking system 100 can identify atracking device 106 as potentially lost in response to determining thatthe tracking device is not located within a threshold distance (such asa wireless communicative range, a selected threshold distance, or apre-determined distance) of a target device (such as a user's mobiledevice or of one or more additional tracking devices). For instance, ifa tracking device is commonly located within a threshold distance of auser's mobile device, the tracking system 100 can flag the trackingdevice as potentially lost in response to a determination that thetracking device is located outside the threshold distance of the user'smobile device. In addition, if a tracking device is commonly locatedwithin a threshold distance of a second tracking device, the trackingsystem can flag the tracking device as potentially lost in response to adetermination that the tracking device is located more than a thresholddistance away from the second tracking device. Likewise, if a trackingdevice is part of a tracking device collection, the tracking system 100can flag the tracking device as potentially lost in response to adetermination that the tracking device is located more than a thresholddistance away from one or more additional tracking devices within thetracking device collection.

It should be noted that the determination that a tracking device ispotentially lost in response to proximity to another tracking device, atracking device collection, or a user's mobile device can be based ontime. For instance, if two tracking devices are commonly located withina threshold distance of each other during normal work hours for a user,but aren't commonly located within the threshold distance of each otheroutside of work hours, the tracking system 100 may flag a first of thetracking devices as potentially lost only if the first tracking deviceis located more than the threshold distance from the second trackingdevice during work hours, and may not flag the first tracking device aspotentially lost if the first tracking device is located more than thethreshold distance from the second tracking device outside of workhours.

The tracking system 100 can determine that a tracking device 106 is notwithin a threshold proximity of a mobile device 102 by determining thatthe tracking device is outside of the transmission or communicativerange of the mobile device. For instance, if the mobile device and thetracking device are configured to communicatively couple via theBluetooth protocol, the tracking system 100 can determine that thetracking device 106 is outside of a threshold proximity of the mobiledevice 102 if the mobile device is unable to receive Bluetoothadvertisements or communications from the tracking device. The trackingsystem 100 can determine that a first tracking device is not within athreshold proximity of one or more additional tracking devices bydetermining that the one or more additional tracking devices are withinthe transmission or communicative range of one or more mobile devices,and that the first tracking device is not within the transmission orcommunicative range of the one or more mobile devices. Likewise, thetracking system 100 can determine that a tracking device 106 is notwithin a threshold proximity of a mobile device 102 or one or moreadditional tracking devices by determining a location of the trackingdevice (e.g., from a community mobile device 104 different than themobile device 102, from a database storing a last known location of thetracking device, or from any other suitable source), and determiningthat the determined location of the tracking device is greater than athreshold distance away from the mobile device 102 or the one or moreadditional tracking devices.

In some embodiments, the tracking system 100 can flag a tracking device106 as potentially lost in response to the movement of the trackingdevice from within a threshold distance of a mobile device 102 togreater than a threshold distance of the mobile device. In someembodiments, the tracking system 100 can flag a tracking device 106 aspotentially lost in response to the severing of a communicativeconnection between the tracking device and a mobile device 102 (forinstance, as a result of the movement of the tracking device and themobile device away from each other). In some embodiments, a user canselect the threshold distance used by the tracking system 100 to triggera determination that the tracking device 106 is potentially lost, forinstance via an interface of the mobile device 102.

FIG. 6 illustrates a flowchart for a method of identifying a trackingdevice as potentially lost based on a threshold distance from a targetdevice, according to one embodiment. Alternate embodiments may containmore, fewer, or different steps, or the steps may be performed in anorder different from the one shown in FIG. 6.

The tracking system 100 receives 600 a location of a user's trackingdevice and receives 610 a location of a target device. In someembodiments, the tracking device location is received from a mobiledevice of a user different from the user to whom the tracking devicebelongs. The target device can be another tracking device, a user'smobile device, or any other suitable system. The tracking system 100determines 620 whether the tracking device location is more than athreshold distance from the target device location. If the trackingdevice location is determined to be more than the threshold distancefrom the target device location, the tracking system identifies 630 thetracking device as potentially lost. The tracking system 100 generates640 a notification identifying the tracking device and indicating thatthe tracking device is potentially lost, and provides 650 the generatednotification to the user's mobile device. The user's mobile device canbe configured to display the notification to the user.

Examples: In some embodiments, the tracking system 100 notifies a userthat a tracking device is potentially lost if the tracking device is notlocated with a threshold distance of the user's mobile device and if thetracking device is coupled with an object the user uses regularly. Forexample, the user may be notified as such if the tracking device iscoupled to keys, a wallet, a phone, glasses, a watch, a laptop, adigital book/reader, or a tablet. The threshold distance can be selectedby the user or the tracking system 100 such that the tracking device ison the user's person or within the user's immediate vicinity (e.g. ≤5feet), or may be selected such that the user is reminded to bring theobject when the user leaves an area (e.g. approximately 15 feet). Insome embodiments, the user designates which tracking devices are coupledto objects the user uses regularly. The user may also designate timeperiods during which those designated tracking devices should be withina threshold distance of the user's mobile device. For example, the usermay designate the user's work hours, workout hours, sleeping hours,dining hours, relaxation hours, traveling hours, class hours, orcommuting hours.

In some embodiments, the tracking system may notify a user that atracking device is potentially lost if a tracking device was locatedwithin the threshold distance of the user's mobile device when the userleft a geographic location and the tracking device is not located withinthe threshold distance of the user's mobile device before the userreturns to that geographic location. For example, if the tracking deviceis coupled to a tablet, if the user leaves home with the tablet and thetracking system 100 determines that the tablet tracking device is notwithin a threshold distance of the user's mobile device before the userreturns home, the tracking system 100 may notify the user that thetablet tracking device is potentially lost. The threshold distance maybe selected such that if the tracking device is near the user or in theuser's car (e.g. 2-5 feet), the tracking device is not identified aspotentially lost. Example geographic locations include the user's home,work, school, gym, or car.

In some embodiments, the tracking system 100 notifies the user that atracking device coupled to car accessory may not be in the car based onwhether the car accessory tracking device is located within a thresholddistance of a tracking device coupled to the car. For example, if atracking device coupled to the user's parking pass is not located withinthe threshold distance of a tracking device coupled to a car, thetracking system 100 may notify the user that the parking pass trackingdevice is not in the car. In such embodiments, the tracking system 100may only notify the user if the user's mobile device is located within athreshold distance of the car tracking device. For example, the trackingsystem 100 may notify the user if a phone charger tracking device is notlocated within a first threshold distance of a car tracking device ifthe user is located within a second threshold distance of the cartracking device (e.g. if the user is in the car and about to leave).

In some embodiments, the tracking system 100 provides notifications tothe user's mobile device if the user is traveling and based on whetherthe travel tracking device is located within a threshold distance of theuser's mobile device. For example, if the user is on an airplane, theuser may be notified that a travel tracking device (e.g. a luggagetracking device, a laptop tracking device, a phone tracking device) isnot on the user's airplane if the travel tracking device is not locatedwithin a threshold distance of the user's mobile device or a trackingdevice coupled to the airplane. Additionally, the tracking system 100may notify the user of a travel tracking device that is potentially lostif the travel tracking device is within a threshold distance of anairplane tracking device and not within a threshold distance of theuser's mobile device (e.g. the user left the travel tracking device onthe airplane).

In some embodiments, the tracking system 100 notifies the user that theuser's luggage was sent to the wrong airport. The tracking system 100can notify the user of such a state if the user's mobile device islocated within a threshold distance of one airplane tracking device, anda luggage tracking device is located within a threshold distance ofanother airplane tracking device (or a community member's mobile device)that is at a different airport from the airport of the first airplane.

In some embodiments, the tracking system 100 notifies the user if theuser has potentially lost a tracking device coupled to the user'spassport. If a passport tracking device is not located within athreshold distance of the user's mobile device or other travel trackingdevices (such as a luggage tracking device, a travel bag trackingdevice, etc.) while the user's mobile device or the travel trackingdevices are at a travel hub (e.g. airport, seaport, train station), theuser may be notified that the passport tracking device is potentiallylost.

In some embodiments, the tracking system 100 notifies the user that atracking device may have been stolen from the user's car if the trackingdevice is not located within a threshold distance of a car trackingdevice. For example, if the user leaves a tracking device coupled to alaptop in a car, and the laptop tracking device is not located within athreshold distance of the car tracking device, the user may be notifiedthat the laptop tracking device has left the car. The tracking system100 may only notify the user that a tracking device is potentiallystolen if the user's mobile device is not detected within a thresholddistance of the car tracking device during the time period in which thepotentially stolen tracking device was determined to be outside thethreshold distance from the car. For example, a user may have left alaptop tracking device in a car, and as a result, the laptop trackingdevice may be within a threshold distance of a car tracking device. Ifthe laptop tracking device is determined to be outside the thresholddistance from the car tracking device before the user returns to the car(e.g. when the user's mobile device is within a threshold distance ofthe car tracking device), the user can be notified that the laptoptracking device has been stolen.

In some embodiments, the tracking system 100 notifies the user when atracking device associated with a child is not located within athreshold distance of the user's mobile device. For example, a trackingdevice may be coupled to the child's phone, jacket, backpack, shoes, ortoys. The user may configure the threshold distance of the childtracking device based on where the child is. For example, if the childis at the park, the threshold distance may be larger than if the childis at a theme park. In some embodiments, the user is notified when thechild tracking device is not located within a threshold distance ofanother tracking device, such as a tracking device given to a babysitter to locate the child tracking device. In these embodiments, if thechild tracking device is not located within a threshold distance of theother tracking device, the tracking system 100 may notify the userthrough the user's mobile device that the child tracking device isoutside the threshold distance of the user's mobile device or anothertracking device.

In some embodiments, the tracking system 100 will notify the user of apotentially lost tracking device when the user's mobile device is at aparticular geographic location/within a geographic boundary and when thetracking device is not located within a threshold distance of the user'smobile device. For example, if the user's mobile device is at a store,the tracking system 100 may notify the user of a potentially lost wallettracking device if the wallet tracking device is not located within athreshold distance of the user's mobile device while the user is at thestore. The tracking system 100 may flag one or more tracking devicesfrom a particular collection of tracking devices depending on whichgeographic location or geographic boundary the mobile device is in. Forexample, if the mobile device is at the airport, the tracking system 100may notify the user if a travel tracking device is not located within athreshold distance of the mobile device or another travel trackingdevice. If the mobile device is at the gym, the tracking system 100 maynotify the user if a gym bag tracking device is not located within athreshold distance of the mobile device or another workout trackingdevice. If the mobile device is at the beach, the tracking system 100may notify the user if a beach gear tracking device is not locatedwithin a threshold distance of the mobile device or another beachtracking device. If the mobile device is at work, the tracking system100 may notify the user if a work tracking device is not located withina threshold distance of the mobile device or another work trackingdevice. If the mobile device is at a campsite, the tracking system 100may notify the user if a camping tracking device is not located within athreshold distance of the mobile device or another camping trackingdevice.

Geographic location: The tracking system 100 can identify a trackingdevice 106 as potentially lost in response to determining that thetracking device is more than a threshold distance from a selectedgeographic location (for instance, defined by geographic coordinates),or outside of an area defined by a selected geographic boundary (forinstance, boundaries associated with a house or building, boundariesassociated with property lines or a property lot, and the like). Thegeographic location or geographic boundary can be defined or selected bya user, for instance, via an interface of the mobile device 102 or ofthe tracking system 100. For example, a user can define a set of GPScoordinates as a selected location, or can draw a set of geographicboundaries within a map interface. In some embodiments, a user canselect a threshold distance or can change a pre-set threshold distancefor use in conjunction with a selected geographic location (such thattracking devices located more than the selected threshold distance areidentified as potentially lost).

The geographic location or geographic boundary can also be selected (forinstance, by the tracking system 100) based on historical location dataassociated with the tracking device 106, a user, or a mobile device 102associated with the user. For instance, if a tracking device 106 iscommonly located within a geographic boundary associated with a user'swork building during week day working hours, the geographic boundary canbe selected by the tracking system 100 for use in determining if thetracking device is potentially lost. Likewise, if a tracking device 106is commonly located within a threshold distance of a user's home on theweekend, a geographic location corresponding to the user's home (e.g., aset of GPS coordinates over which the user's home is located) can beselected by the tracking system 100 for use in determining if thetracking device is potentially lost.

In some embodiments, the tracking system 100 can identify a potentialgeographic location or geographic boundary for use in determining if atracking device 106 is potentially lost based on historical locationdata associated with the tracking device, a user, or a mobile device ofthe user, and can present the potential geographic location orgeographic boundary to the user. For instance, an application associatedwith the tracking system 100 can display a set of selectable potentialgeographic locations or geographic boundaries to the user, and candisplay information associated with the historical location data uponwhich each potential geographic location or geographic boundary isidentified (for instance, the application can display a potentialgeographic location in conjunction with the text “recommended based onthe location of this tracking device during weekdays between the hoursof 9 am and 5 pm”). If the user selects the potential geographiclocation or geographic boundary, the tracking system 100 can store thegeographic location or geographic boundary for future use in determiningif the tracking device 106 is lost.

The tracking system 100 can determine that a tracking device 106 is notlocated within a threshold distance of a geographic location or is notlocated within a geographic boundary if 1) a location of the trackingdevice is received from a community mobile device 104 and 2) if thereceived location is more than a threshold distance away from thegeographic location or is located outside of the geographic boundary.Alternatively, the tracking system 100 can determine that a trackingdevice 106 is located more than a threshold distance away from ageographic location or outside of a geographic boundary in responseto 1) determining that a mobile device 102 of a user is located withinthe threshold distance of the geographic location or within thegeographic boundary and 2) determining that the tracking device is notlocated within the communicative or transmission range of the mobiledevice (for instance, by determining that the mobile device cannotcommunicatively couple to the tracking device). In such embodiments, thecommunicative or transmission range of the mobile device 102 can begreater than the range defined by the geographic location and thethreshold distance, and greater than the range defined by the geographicboundary.

FIG. 7 illustrates a flowchart for a method of identifying a trackingdevice as potentially lost based on a threshold distance from ageographic location, according to one embodiment. Alternate embodimentsmay contain more, fewer, or different steps, or the steps may beperformed in an order different from the one shown in FIG. 7.

The tracking system 100 receives 700 a location of a user's trackingdevice. In some embodiments, the tracking device location is receivedfrom a mobile device of a user different from the user to whom thetracking device belongs. The tracking system 100 determines 710 if thetracking device location is more than a threshold distance from ageographic location. As described above, in alternate embodiments, thetracking system determines if the tracking device location is outside ofa geographic boundary. If the tracking system 100 determines that thetracking device location is more than the threshold distance from thegeographic location (or outside the geographic boundary), the trackingsystem identifies 720 the tracking device as potentially lost. Thetracking system 100 generates 730 a notification identifying thetracking device and indicating that the tracking device is potentiallylost, and provides 740 the generated notification to the user's mobiledevice. The user's mobile device can be configured to display thenotification to the user.

Examples: In some embodiments, the tracking system 100 notifies the userwhen a tracking device coupled to a set of keys leaves a geographicboundary. For example, if a business provides a set of keys to atemporary employee or a contractor, the tracking system 100 may notifythe user when a keys tracking device is not located within a thresholddistance of a geographic location or within a geographic boundaryassociated with an office of the business.

In some embodiments, a tracking device is coupled to a lifting weight orsome other piece of exercise equipment and the tracking system 100notifies the user when the lifting weight tracking device leaves a gym.Each lifting weight or piece of exercise equipment in a gym may becoupled to a tracking device and the notification to the mobile devicemay include information that identifies which lifting weight was notlocated within the gym.

In some embodiments, if the mobile device is located near a touristdestination and a tracking device coupled to a camera is located withina threshold distance of the mobile device, the tracking system 100 maynotify the user through the mobile device that they may want to take outtheir camera and take pictures of the tourist destination.

In some embodiments, the tracking system 100 notifies the user that theuser's car is potentially stolen if the car tracking device coupled tothe user's car is located outside of a threshold distance from thegeographic location where the user parked the car. The tracking systemcan determine a geographic location for where the user parked the carbased on the geographic location of the car tracking device when themobile device exceeded a threshold distance away from the car trackingdevice (e.g., when the user walked more than a threshold distance awayfrom the car). If the car tracking device is located more than athreshold distance from the parking location, the tracking system 100can notify the user that the car has potentially been stolen.

In some embodiments, the tracking system 100 notifies a user if atracking device is not located within a room or a house. For example, ifa tracking device is coupled to an object that is not supposed to leavea room (e.g. a remote control, reading glasses), the tracking system 100may notify the user if the tracking device leaves the room/is notlocated within the room. The tracking system 100 may also notify theuser that a tracking device coupled to a valuable item (such as a safe,a jewelry box, artwork, a television, a computer, etc.) may have beenstolen from a house if the tracking device coupled to the valuable itemis not located within the house.

In some embodiments, the tracking system 100 notifies the user if theirchild is not at a geographic location at which the child is supposed tobe. If a tracking device associated with the child (e.g., a trackingdevice coupled to the child's bag or jacket) is not located within athreshold distance of a geographic location or within certain geographicboundaries (e.g. home, school, art/performance/music lessons, sportpractice, friend's house), the user may be notified that the child isnot located where they are supposed to be and may be provided with thelocation of the child tracking device.

In some embodiments, the tracking system 100 notifies the user if atracking device coupled to a pet is not located within a thresholddistance of the user's home or within the geographic boundaries of theuser's home. For example, if the user's pet escapes or is stolen, thetracking system 100 can notify the user that the pet tracking device isnot located within the user's home and can provide the location of thepet tracking device. In some embodiments, the tracking system 100notifies the user if the pet tracking device enters a particular part ofthe user's home. For example, if the pet is not supposed to be insidethe house or not supposed to be in a particular room of the house, thetracking system can notify the user that the pet tracking device is notwhere it is supposed to be based on whether the pet tracking device isor is not located within a threshold distance of a geographic locationor whether the pet is or is not located within a geographic boundary.

Tracking Device Behavior:

The tracking system 100 can identify a tracking device 106 aspotentially lost in response to a comparison of current tracking devicebehavior and location and historical tracking device behavior andlocation. For instance, the tracking system 100 can determine that atracking device 106 commonly accompanies a user on the user's way towork based on an analysis of historical location data associated withthe tracking device, and can flag the tracking device as potentiallylost in response to determining that the tracking device is notaccompanying the user on the user's way to work. Likewise, the trackingsystem 100 can determine that the tracking device 106 typically does notmove between the hours of 10 am and 4 pm on weekdays based on ananalysis of historical movement data associated with the trackingdevice, and can flag the tracking device as potentially lost in responseto a determination that the motion of the tracking device exceeds apre-determined motion threshold during this time interval. In addition,the tracking system 100 can determine that the tracking device 106commonly communicatively connects with a mobile device 102 of a userafter 10 pm on weekends based on an analysis of historical communicationdata associated with the tracking device, and can flag the trackingdevice as potentially lost in response to a determination that thetracking device has not communicatively connected to the mobile deviceon a weekend day after 10 pm after the passage of a threshold amount oftime.

The tracking system 100 can predict a future state of the trackingdevice 106 based on a comparison of historical data associated with thetracking device. For instance, the tracking system 100 can determinethat a tracking device 106 commonly travels between a first location anda second location between the hours of 5 pm and 6 pm, and can predictthat the tracking device will be located at the second location after 6pm in the event that the tracking device is outside the communicativerange of a user's mobile device. Continuing with this example, thetracking system 100 can determine that the tracking device 106 commonlytakes 30 minutes to reach the second location after leaving the firstlocation, and can predict that the tracking device will reach the secondlocation approximately 30 minutes after detecting that the trackingdevice has left the first location. Historical data analyzed by thetracking system 100 can include when, where, or how often the trackingdevice connects with the mobile device. In some embodiments, thetracking system 100 can analyze historical behavior of other trackingdevices for use in predicting a state of the tracking device 106. Insuch embodiments, historical location and movement patterns of othertracking devices can be used to predict a location and/or movement ofthe tracking device 106 in response to a determination that the trackingdevice is undergoing similar location and movement patterns.

Examples: In some embodiments, the tracking system 100 identifiescollections of tracking devices, as described above, for instance basedon a history of the tracking devices tending to be located near eachother or based on a collection definition from a user, and can notifythe user that a tracking device of a collection is lost if the trackingdevice is not located near tracking devices in a collection. Forexample, the tracking system may determine that a keys tracking deviceand a wallet tracking device are typically located near each other, andthus may include the keys tracking device and the wallet tracking devicein a collection. If the keys tracking device is subsequently not locatednear the wallet tracking device, the user may be notified that the keystracking device or the wallet tracking device is potentially lost. Insome embodiments, the tracking system 100 identifies tracking devicesthat are typically located near each other and may prompt the user tocreate a collection of the tracking devices or to add one or more of thetracking devices to an existing collection. For example, if the trackingsystem 100 determines that a toiletry bag tracking device is typicallylocated near a suitcase tracking device, the tracking system 100 mayprompt the user to add the toiletry bag tracking device to a traveltracking device collection.

In some embodiments, the tracking system 100 can notify the user that acar tracking device is potentially stolen based on the behavior of thecar tracking device. For example, if the car tracking device istypically parked within a threshold distance of a geographic locationduring particular hours (e.g. while the user is typically home orasleep), the tracking system 100 may notify the user if the car trackingdevice is not located within that threshold distance. The trackingsystem may also determine that a keys tracking device is typicallylocated near the car tracking device when the car tracking device ismoving, and may notify the user that the car tracking device ispotentially stolen if the car tracking device is moving when not nearthe keys tracking device.

In some embodiments, the tracking system 100 can notify the user that acar coupled to a tracking device has been in a car accident. Thetracking system 100 may determine if the car tracking device stopssuddenly or begins to move erratically and may identify that behavior asindicative of a car accident. The tracking system 100 may send anotification to the user about the potential car accident, and thenotification may include an option to automatically send emergencyassistance (e.g. an EMT, paramedic, fire fighters, the police) to thelocation of the car tracking device. If the mobile device is not locatednear the car tracking device, the notification may include the locationof the car tracking device. If the mobile device is located near the cartracking device (e.g. within a threshold distance), the tracking system100 may automatically notify an emergency assistance service (e.g. 911)of the car accident and may transmit the location of the car trackingdevice or the mobile device to the emergency assistance service.

In some embodiments, the tracking system 100 can notify the user with anestimate for how long it will take for the user's luggage to arrive atthe luggage carousel from an airplane. The tracking system 100 mayanalyze the amount of time it takes luggage tracking devices of otherusers to arrive at the luggage carousel and provide an estimate based onthose amounts of time. In some embodiments, the tracking system 100determines an estimate for the amount of time will take for a luggagetracking device to arrive at the luggage carousel based on which airportthe user has arrived at. The tracking system 100 may also analyze thepaths luggage tracking devices take in an airport from an airplane to aluggage carousel and, based on those paths, provide a real-time timeestimate to the user. For example, if the average wait time is 30minutes and the luggage tracking device is half way to the luggagecarousel from the airplane, the tracking system 100 may update the waittime estimate to 15 minutes.

In some embodiments, the tracking system 100 notifies the user if atracking device typically does not move and the tracking device suddenlybegins to move. For example, a tracking device may be coupled to anobject that typically does not move, such as a piece of art, a safe, anunused car, a desktop computer, a passport, or a file cabinet. If thetracking device moves (e.g. is located in a location different fromwhere it was originally, or a motion-detection sensor of the trackingdevice, such as an accelerometer, detects movement), the tracking system100 may notify the user that the tracking device is potentially lost orstolen. In some embodiments, the tracking system 100 only notifies theuser that the tracking device has moved if the mobile device is notlocated within a threshold distance of the tracking device.

In some embodiments, the tracking system 100 notifies the user if a petcoupled to a pet tracking device is taken for a walk. The trackingsystem 100 may determine if a pet is being taken out for a walk if thepet tracking device is following a path that the pet tracking devicefollows regularly (e.g. weekly, when a pet walker comes to walk thepet). If the pet tracking device deviates from paths the pet trackingdevice has taken in the past, the tracking system 100 may notify theuser that the pet is potentially lost rather than that the pet is on awalk. Additionally, if the tracking system 100 determines that the petis on a walk but that the path taken by the pet tracking device isdifferent from a typical path of a walk (e.g. significantly longer orshorter), the tracking system 100 may provide a notification describingthe difference to the user.

User Behavior:

The tracking system 100 can identify a tracking device 106 aspotentially lost in response to a comparison of current user locationand behavior and historical user location and behavior. For instance,the tracking system 100 can determine that a user commonly brings atracking device 106 with the user during particular times of the day(determined, for instance, based on historical communicative connectionsbetween the tracking device and a mobile device 102 of the user). Insuch instances, if the user is determined to not have the trackingdevice 106 during similar times of the day, the tracking system 100 canflag the tracking device as potentially lost. Likewise, the trackingsystem 100 can determine that when a mobile device 102 of a user ishistorically communicatively connected to a first tracking device in acollection of tracking devices, the user is historically commonlyconnected to the remaining tracking devices in the collection oftracking devices. In such instances, if the user's mobile device 102 iscommunicatively connected to the first tracking device in the collectionbut not the second tracking device in the collection, the trackingsystem 100 can flag the second tracking device as potentially lost.

The tracking system 100 can predict a state of a tracking device 106based on historical user location and behavior. For instance, thetracking system 100 can determine that users commonly bring a particulartype of object coupled to a tracking device when the users move from afirst location to a second location. In such instances, the trackingsystem 100 can determine that the user of a tracking device 106 coupledto the particular type of object is in the first location, and canpredict that the user will want to bring the object to the secondlocation. Likewise, the tracking system 100 can determine that a usercommonly drives a particular vehicle on weekend mornings, and canpredict that the user will need to bring the user's wallet coupled to atracking device 106 before the user drives the vehicle.

FIG. 8 illustrates a flowchart for a method of identifying a trackingdevice as potentially lost based on historical movement behavior,according to one embodiment. Alternate embodiments may contain more,fewer, or different steps, or the steps may be performed in an orderdifferent from the one shown in FIG. 8.

The tracking system 100 determines 800 a current movement behavior of auser's tracking device, and determines 810 a historical movementbehavior. The historical movement behavior can be historical movementbehavior of the tracking device, the user, or the user's mobile device.It should also be noted that in some embodiments, the tracking system100 can determine a current movement behavior of a user, or of a user'smobile device. The tracking system 100 determines if the currentmovement behavior differs from the historical movement behavior. If thecurrent movement behavior differs from the historical movement behavior(e.g. by more than a threshold amount), the tracking system identifies830 the tracking device as potentially lost. The tracking system 100generates 730 a notification identifying the tracking device andindicating that the tracking device is potentially lost, and provides740 the generated notification to the user's mobile device. The user'smobile device can be configured to display the notification to the user.

Examples: In some embodiments, the tracking system 100 notifies the userif the user has potentially dropped a tracking device. For example, ifthe tracking system 100 detects that the user may have dropped atracking device coupled to the user's keys or wallet, the trackingsystem 100 may notify the user that the tracking device was potentiallydropped and provide the location of the tracking device to the user inthe notification. The tracking system 100 may detect a dropped trackingdevice if the tracking device is moving similarly to and in conjunctionwith the mobile device and the tracking device stops moving while themobile device keeps moving, or the movement of the tracking devicediffers by more than a threshold from the movement of the mobile device.In some embodiments, the tracking system 100 provides notifications tothe user based on the user's routine. If the user regularly visits alocation during a particular time period and brings one or more trackingdevices while visiting the location, the tracking system 100 may providenotifications to the user that remind the user to bring the trackingdevices or notify the user that they potentially forgot to bring one ormore of the tracking devices. For example, if the user visits a gymevery week, the tracking system 100 may provide notifications to theuser to bring gym tracking devices (e.g. a gym shoes tracking device ora gym bag tracking device) to the gym. Similarly, if the user travelsregularly, the tracking system 100 may notify the user to bring traveltracking devices (e.g. a passport tracking device or a luggage trackingdevice) before the user travels to the airport. If the user is a studentand goes to class regularly, the tracking system 100 can provide anotification to bring tracking devices coupled to class supplies (e.g.textbooks, a laptop, pencil case, notebook, homework/homework folder),or may notify the user if the user has potentially forgotten a classsupply tracking device. In some embodiments, the user can specifyroutine activities for which the tracking system 100 should providenotifications or can specify time ranges during which the trackingsystem 100 should provide notifications. For example, if the user goesto the gym on Tuesdays, the user may specify to the tracking system 100to provide reminder notifications about gym tracking devices on Tuesdaysor when the user is going to or at the gym.

In some embodiments, the tracking system 100 can provide remindernotifications to the user to use objects that the user needs to interactwith regularly. The tracking system 100 may determine if the user isnear a tracking device coupled to one of the objects and, if the userhas not been near the tracking device within a certain time period, thetracking system 100 may notify the user to use the object coupled to thetracking device. For example, the user may be notified to use a pillbox/medicine, a toothbrush, a mouth guard, or weights/exerciseequipment. In some embodiments, the tracking device is coupled to anobject that is related to a chore the user needs to perform on a regularbasis, such as a pet food bowl, a mailbox, a washer/dryer, a dishwasher,a sink, or a trash can.

External Data:

The tracking system 100 can identify a tracking device 106 aspotentially lost or can predict a state of the tracking device based ondata received from an external data source 112. The external data source112 can be an external database, a website, a digital or networkservice, an external device or system, a communication, or any othersuitable source. In some embodiments, data can be requested from theexternal data source 112 by the tracking system 100 or a mobile device102, for instance via an API associated with the external source. Thedata can be requested from the external data source 112 at the explicitrequest of a user of the mobile device 102, periodically, or in responseto the occurrence of an event (for instance, the movement of a trackingdevice 106, the communicative coupling of the tracking device to themobile device, locating the tracking device, the movement or location ofthe user, or any other suitable criteria).

FIG. 9 illustrates a flowchart for a method of identifying a trackingdevice as potentially useful to user based on external data, accordingto one embodiment. Alternate embodiments may contain more, fewer, ordifferent steps, or the steps may be performed in an order differentfrom the one shown in FIG. 9.

The tracking system 100 determines 900 a location of a user's trackingdevice, where the tracking device is coupled to an object. The trackingsystem 100 determines 910 a location of a user, and determines 920whether the tracking device location is more than a threshold distancefrom the user's location. If the tracking device location is more thanthe threshold distance from the user location, the tracking system 100accesses 930 external data from an external source, where the externaldata is associated with the object coupled to the tracking device. Thetracking system 100 determines 940 that possession of the object islikely to be useful to the user based on the external data. The trackingsystem 100 generates 950 a notification identifying the tracking deviceand recommending that the user obtain the object, and provides 960 thegenerated notification to the user's mobile device. The user's mobiledevice can be configured to display the notification to the user.

Examples: In some embodiments, the tracking system 100 receivesfinancial transaction information from a bank or a budgeting system todetect fraudulent charges to the user's account. The tracking system 100may receive information identifying transactions charged to the user'scredit card and identifying where the transactions occurred. If atransaction occurred at a store that the wallet tracking device has notbeen in or was not in at the time of the transaction, the trackingsystem 100 may notify the user that the transaction at the store ispotentially fraudulent. In some embodiments, the notification of thepotential fraudulent charge may include an option to notify the creditcard company of the fraudulent charge.

In some embodiments, the tracking system 100 receives sales informationfrom a vendor system regarding sales that are available near the userbased on tracking devices near the user. If the tracking system 100detects that a tracking device is near the user (e.g. within a thresholddistance of the mobile device), and the tracking device is coupled to anobject, the tracking system 100 may provide a notification withinformation about a sale that is relevant to the object. For example, ifthe user is carrying a gym bag tracking device and is walking through astore, the tracking system 100 may notify the user that there is a saleon energy drinks or water. In some embodiments, the tracking system 100provides notifications with sales information based on a tracking devicenot being located near the user. For example, if the user is carrying aluggage tracking device, but a toiletry bag tracking device is notlocated near the user, the tracking system 100 may notify the user ofsales to purchase toiletries in a nearby store.

In some embodiments, the tracking system 100 receives parking regulationinformation from a database. The parking regulation information maydescribe where a user can park a car and for how long the user can parkthe car there. The tracking system 100 can provide notifications to auser if the user has parked their car in a spot for too long. Forexample, if a car tracking device is located in a parking spot that hasa two hour parking limit, the user may be notified after an hour and ahalf that the car tracking device needs to be moved soon. If the userpaid a parking meter for the parking spot, the tracking system 100 mayprovide a notification to the user when the parking meter timer isgetting low, and the notification may include an option to pay moremoney into the parking meter. In some embodiments, the tracking system100 determines which parking meter is associated with the car trackingdevice based on the location of the car tracking device. Additionally,the tracking system 100 may notify the user if the car tracking deviceis potentially parked in a parking spot that the car is not allowed tobe parked in. For example, if street parking on a street is restrictedon Mondays and the car tracking device is located on the restrictedstreet on a Monday, the user may be notified that their car ispotentially parked illegally.

In some embodiments, the tracking system 100 receives information abouta user's schedule and provides notifications to the user based on theuser's schedule. The schedule information can include information abouta user's calendar from a calendaring system or a user's messages (e.g.emails, texts, instant messages) from a messaging system. The scheduleinformation may describe events the user must attend, including what theevents are, when they are, and where they are. The tracking system 100may provide notifications to the user to remind the user to bringcertain tracking devices to an event or to notify the user that theypotentially left a tracking device behind. For example, the trackingsystem 100 may remind the user to bring a wallet tracking device, a keystracking device, a watch tracking device, or a glasses tracking deviceto events on the user's schedule. In some embodiments, the trackingsystem 100 provides a notification to the user based on what event is onthe user's schedule. For example, if the schedule information shows thatthe user is going to class and does not have a class tracking device(e.g. a textbook tracking device, pencil case tracking device, notebooktracking device), the tracking system 100 may notify the user that theypotentially forgot the class tracking device. In some embodiments, theschedule information includes the type of the class (e.g., Biology,English, History) the user needs to attend, and the tracking system 100may identify the class tracking device as potentially lost based on thetype of the class.

In some embodiments, the tracking system 100 receives travel informationfor the user from a travel agency or a transport service and providesnotifications based on the travel information. The travel informationcan include the user's start location, destination, departure time,arrival time, or transportation hubs the user may be traveling through.In some embodiments, the travel information is determined based on theuser's emails or calendar received by the tracking system 100. Thetracking system 100 may provide a notification to the user to packcertain objects based on the user's destination. For example, if theuser is traveling to a cold place and a jacket tracking device is notlocated near a luggage tracking device, the tracking system 100 maynotify the user that they should pack a jacket. The tracking system 100can notify the user that their luggage is potentially lost if a luggagetracking device is not located at the correct transportation hub(determined based on information received from a travel system) when theuser arrives at the transportation hub. For example, if a luggagetracking device is located at an airport that is different from the onethe user arrived at, the user may be notified that the luggage trackingdevice is at the wrong airport.

In some embodiments, the tracking system 100 can notify a travel hub ora transportation service if a user's luggage takes a long time to reacha luggage carousel or if the user's luggage was lost. The trackingsystem 100 can determine if a user's luggage took a long time to reach aluggage carousel or if the user's luggage was lost based on the locationof a luggage tracking device. If the tracking system 100 notifies thetravel hub or transportation service about delayed or lost luggage, thetracking system 100 may receive a coupon, gift card, offer, or the likefor the user from the travel hub or transportation service. For example,the travel hub or transportation service may provide the user with anoffer for a free coffee or a discount on a future trip.

In some embodiments, the tracking system 100 receives weatherinformation from a weather service and can provide notifications to theuser based on the weather information. The weather information includesinformation about the weather in a geographic area, including high andlow temperatures, rain/snow forecasts, wind forecasts, or humidityforecasts. The tracking system 100 may provide notifications to the userif the user is not located near a tracking device coupled to an objectthat will be necessary or helpful for the forecasted weather in theweather information. For example, if the weather information forecastsrain in the user's geographic area and a jacket tracking device is notlocated near the user, the tracking system 100 may notify the user thatit will rain soon and that the user does not have their jacket. The usermay receive a similar notification if the user is not located near anumbrella tracking device, a rain boot tracking device, or a hat trackingdevice. Similarly, if the weather information forecasts snow in theuser's geographic area, the tracking system 100 may provide the userwith a notification reminding them to bring a coat tracking device, anear muff tracking device, or a scarf tracking device. If the weatherinformation forecasts warm weather in the user's geographic area, thetracking system 100 may provide the user with a notification remindingthem to bring a water bottle tracking device, a sunscreen trackingdevice.

In some embodiments, the tracking system 100 receives information aboutnatural disasters or emergency situations near the user and may notifythe user of the locations of tracking devices coupled to emergencysupplies. Examples of natural disasters can include flooding,hurricanes, tornados, earthquakes, and forest fires. Examples ofemergency situations can include power outages, water outages, policeactivity, and building fires. The tracking system 100 can notify a userof the location of tracking supplies coupled to emergency supplies,including a fire extinguisher, extra water, extra food, and flashlights.In some embodiments, the tracking system 100 notifies the user of thelocation of a tracking device coupled to an object carried by the user'schild if the tracking system receives information about a naturaldisaster or emergency situation.

Sensor Data:

The tracking system 100 can identify a tracking device 106 aspotentially lost or can predict a state of the tracking device based ondata received from one or more tracking device sensors. The trackingdevice sensors can include one or more of: movement sensors (such asaccelerators, gyroscopes, and the like), location determination sensors(such as a GPS transceiver, altimeters, and the like), orientationsensors, proximity sensors, communication sensors (such as a Bluetoothantenna or a Wifi antenna), temperature sensors, pressure sensors, lightsensors, touch sensors (such as a capacitive touch screen), audiosensors (such as a microphone), or any other suitable sensor. Thetracking device 106 can obtain sensor data in response to requestingsensor data from the sensors, automatically (as the sensorsreceive/generate the data), in response to a request from a mobiledevice 102 or a user of the mobile device, in response to a request fromthe tracking system 100, and the like. The tracking device 106 canforward the sensor data to a mobile device 102, which in turn canforward the sensor data to the tracking system 100.

The tracking system 100 can identify a tracking device 106 aspotentially lost based on sensor data received from the tracking device.For instance, if a user leaves the tracking device 106 at home, andsensor data is received from the tracking device indicating that thetracking device has moved, the tracking system 100 can identify thetracking device as potentially lost (or in this case, potentiallystolen). Likewise, if sensor data is received from a first trackingdevice indicating that a temperature has fallen below a particularthreshold, the tracking system can predict that a user might need anobject coupled to a second tracking device in order to stay warm.

FIG. 10 illustrates a flowchart for a method of identifying a trackingdevice as potentially lost based on sensor data, according to oneembodiment. Alternate embodiments may contain more, fewer, or differentsteps, or the steps may be performed in an order different from the oneshown in FIG. 10.

The tracking system 100 determines 1000 a location of a user's trackingdevice that is coupled to an object. The tracking system 100 determines1010 a location of a user, and determines 1020 whether the trackingdevice location is more than a threshold distance from the user'slocation. If the tracking device location is more than the thresholddistance from the user location, the tracking system 100 accesses 1030sensor data from one or more sensors within the tracking device. Thetracking system 100 identifies 1040 identifies the tracking device aspotentially lost based on the sensor data. The tracking system 100generates 1050 a notification identifying the tracking device andidentifying the tracking device as potentially lost, and provides 1060the generated notification to the user's mobile device. The user'smobile device can be configured to display the notification to the user.Examples: In some embodiments, the tracking system 100 usesaccelerometer data from an accelerometer in a tracking device todetermine if the user has dropped the tracking device and may identifythe tracking device as potentially lost. For example, if theaccelerometer data describes a sudden downward acceleration of thetracking device and then a sudden deceleration as the tracking devicereaches the ground, the tracking system 100 may notify the user that theuser potentially dropped the tracking device. In some embodiments, thetracking system 100 only notifies the user that the tracking device ispotentially lost if the tracking device is not located within athreshold distance of the user.

In some embodiments, the tracking system 100 uses thermometer data froma thermometer in a tracking device to notify a user if an area is toowarm or too cold for an object coupled to the tracking device or if thetracking device is outside when it should not be. The tracking system100 may notify the user that the tracking device is potentially lost orthat the tracking device is outside. For example, if the user leavestheir pet outside on a cold day and thermometer data from a pet trackingdevice indicates that the temperature is below a threshold, the trackingsystem 100 may notify the user that it is potentially too cold outsidefor the pet. Similarly, if the user leaves a laptop tracking deviceoutside, the tracking system 100 may notify the user that the laptop ispotentially lost based on thermometer data from the tracking device thatit is warm. Such a tracking device can be coupled to a laptop, a child,a pet, a book, a wallet, keys, or any other object a user may leaveoutside.

In some embodiments, the tracking system 100 uses altimeter data from analtimeter in a water bottle tracking device to notify the user to drinkwater to keep hydrated. If the tracking system 100 determines that thewater bottle tracking device is located near the user, and the altimeterdata from the water bottle tracking device indicates that the waterbottle tracking device is at a high altitude, the tracking system 100may provide a notification to the user to drink from the water bottle tokeep hydrated. Similarly, if the user is at a high altitude and a waterbottle tracking device is not located near the user, the user may benotified that the water bottle tracking device is lost or that the waterbottle tracking device should be brought with the user when the usergoes outside. If the user is at a high altitude, the tracking system 100also may notify the user to use or find a tracking device coupled tosunscreen, a hat, a jacket, a backpack, sunglasses, or any other objectthat may be helpful in a high altitude environment. In some embodiments,the tracking system uses thermometer data from a thermometer in thewater bottle tracking device to notify the user to drink water.

In some embodiments, the tracking system 100 receives barometer datafrom a barometer in a tracking device to determine if it is about torain. If the barometer data indicates that it is about to rain (e.g. thebarometric pressure begins to drop) and a rain-gear tracking device(e.g. a jacket tracking device) is not located near the user, thetracking system 100 may notify the user that the rain-gear trackingdevice is lost or that the user should bring the rain-gear trackingdevice when going outside.

In some embodiments, the tracking system 100 uses audio data from anaudio sensor in a tracking device to determine if an object coupled tothe tracking device is potentially being stolen. If the audio data froma tracking device indicates that a window or a door has been broken, thetracking system 100 may notify the user that someone may be breakinginto their house and may identify the tracking device as potentiallylost. The tracking system 100 also may use accelerometer data todetermine if a tracking device coupled to an object has been stolen. Forexample, if audio data indicates that a window has been broken and/oraccelerometer data indicates that the tracking device is moving, thetracking system 100 may notify the user that the tracking device haspotentially been stolen and may identify the tracking device aspotentially lost.

It should be emphasized that in some embodiments, identifying a trackingdevice as lost or predicting a state of a tracking device can be basedon any combination of the above circumstances. For example, a trackingdevice can be identified as potentially lost based on a proximity of thetracking device to other tracking devices and based on historicalbehavior of the tracking device. Likewise, a state of the trackingdevice can be predicted based on a combination of a movement of thetracking device and based on sensor data received from the trackingdevice.

Examples: In some embodiments, the tracking system 100 uses audio datafrom an audio sensor in a tracking device and the tracking device'sproximity to a geographic location to notify the user that the trackingdevice has potentially been stolen. If the audio data from a trackingdevice indicates that a window or a door has been broken, and thetracking device is not located within a threshold distance of ageographic location or within certain geographic boundaries (e.g. auser's home), the tracking system 100 may notify the user that thetracking device has potentially been stolen.

In some embodiments, the tracking system 100 can notify the user ofpotential fraudulent financial transaction based on the behavior of awallet tracking device. The tracking system 100 can receive financialtransaction information from a bank or a budgeting system. If thefinancial transaction information describes a financial transaction at astore, but the historical behavior of the wallet tracking devicesuggests that the user has not been in the store, the tracking system100 may notify the user of the potentially fraudulent financialtransaction. For example, if the financial transaction informationincludes a credit card charge at a first restaurant on a Wednesday,however the wallet tracking device is typically located in anotherrestaurant on Wednesdays, the tracking system 100 may notify the user ofthe potentially fraudulent charge at the first restaurant.

The tracking device system 100 can prompt a user of a mobile device 102to opt-in to one or more types of interventions, for instance via amobile device interface. For example, the tracking system 100 candetermine that a tracking device 106 is part of a tracking devicecollection, and can suggest to a user of a mobile device 102 that themobile device receive intervention notifications when the distancebetween the tracking device and other tracking devices in the trackingdevice collection exceeds a threshold. If the user opts-in to asuggested intervention, the tracking system 100 stores the opt-in andprovides notifications associated with the intervention in response tothe circumstances associated with the intervention being trigger. If theuser does not opt-in to a suggestion intervention, the tracking system100 will not provide notifications associated with the intervention,even if the circumstances associated with the intervention aretriggered.

FIG. 11 illustrates a flowchart for a method of generating an opt-innotification for identifying a tracking device as potentially lost,according to one embodiment. Alternate embodiments may contain more,fewer, or different steps, or the steps may be performed in an orderdifferent from the one shown in FIG. 11.

The tracking system 100 accesses 1100 criteria for identifying a user'stracking device as potentially lost. The criteria can be associated withone or more properties of the tracking device. The tracking system 100accesses 1110 information associated with the one or more properties ofthe tracking device, and identifies 1120 the tracking device aspotentially lost based on the accessed criteria and the accessedinformation associated with the one or more properties of the trackingdevice. The tracking system 100 generates 1130 an interface including anoption to opt-in to notifications identifying the tracking device aspotentially lost in response to the accessed criteria being satisfied,and provides 1140 the generated interface to the user's mobile device.The mobile device can be configured to display the interface to theuser. In response to the user opting-in to receiving the notifications,the tracking system 100 generates 1150 a notification that the trackingdevice is potentially lost and provides the generated notification tothe mobile device for display to the user.

In some embodiments, the tracking system 100 can prompt a user of amobile device 102, via a notification presented by the mobile device, toconfigure a tracking device 106 to operate in a particular mode based ona predicted state of the tracking device. For instance, if a trackingdevice 106 is predicted to be in motion or is predicted to move to anunfamiliar location, the tracking system 100 can instruct the mobiledevice 102 to display a notification including an option to configurethe tracking device to operate in a high performance mode (e.g., thetracking device can increase a frequency ofadvertisements/communications broadcasted by the tracking device toincrease the likelihood that the tracking device is able tocommunicatively couple to the mobile device or a community mobile device104). Likewise, if a tracking device 106 is predicted to be stationaryfor an interval of time, the tracking system 100 can instruct the mobiledevice 102 to display a notification including an option to configurethe tracking device to operate in a power saving mode (e.g., thetracking device can decrease the frequency ofadvertisements/communications broadcasted by the tracking device inorder to preserve power).

If the user selects to reconfigure the tracking device 106 to operate ina particular mode as suggested by the notification (for instance, byselecting a selectable option displayed by the notification), the mobiledevice 102 can reconfigure the tracking device, and can inform thetracking system 100 that the user reconfigured the tracking device. Inthe future, if the tracking system 100 predicts a similar trackingdevice state, the tracking system can instruct the mobile device 102 tosimilarly configure the tracking device 106 without requiring the mobiledevice to display a similar notification and without requiring the userto affirmatively select to configure the tracking device to operate inthe suggested mode.

Examples: In some embodiments, the tracking system 100 prompts the userto opt into notifications about a luggage tracking device if thetracking system 100 determines the user is traveling. The user canselect to receive notifications about whether the luggage trackingdevice is on the correct airplane, whether the luggage tracking devicearrived at the correct airport, or an estimate for how long it will takefor the luggage tracking device to arrive at a luggage carousel.

In some embodiments, the tracking system 100 prompts the user to optinto or modify the circumstances under which the user is notified when atracking device is not located within a threshold distance of the mobiledevice. For example, if the user leaves a wallet tracking device or akeys tracking device on a desk in the user's office and the user leavesthe office without bringing the wallet tracking device or the keystracking device, the user may not want a notification while the user isstill within the office building. Thus, the tracking system 100 mayprompt the user to adjust the threshold distance for which lostdeterminations are made for one or more tracking devices. Additionally,if the user does not want to receive notifications about a trackingdevice not being located within a threshold distance of the user, theuser may be prompted to disable the notifications regarding thattracking device. For example, if a user lends their car to other people,the user may disable notifications about a car tracking device.

In some embodiments, the tracking system 100 prompts the user toconfigure a tracking device to operate in a particular mode. Forexample, the user may configure a tracking device to operate in a powersaving mode if the tracking device is coupled to an object that ispredicted to be stationary for a period of time, such as a safe,artwork, a desktop computer, a jewelry box, or a television. The usermay also configure a tracking device to operate in a power saving modeif the tracking device is coupled to an object (such as a televisionremote, a pet, or weights/exercise equipment) that is predicted to belocated within a geographic area, such as a home, an office, or a store.The user may configure a tracking device to operate in a highperformance mode if the tracking device is coupled to an object that ispredicted be in an unknown/unfamiliar area or is predicted to move, suchas a car, luggage, a wallet, or keys. In some embodiments, the user mayconfigure a tracking device to operate in different modes based on wherethe tracking device is located. For example, a pet tracking device mayoperate in a power saving mode when the pet tracking device is locatedwithin a home and may operate in a high performance mode if the trackingdevice is located outside the home.

The tracking device interventions described herein can beneficiallyenable a user to know that a tracking device is lost before the usereven realizes the tracking device is lost. Likewise, a tracking deviceintervention can remind a user to bring an object coupled to a trackingdevice with the user when the user moves from a first location to asecond location (e.g., on the way to work) before the user gets too faraway from the first location. In addition, a tracking deviceintervention can suggest a user take an action (such as bringing anobject coupled to a tracking device) based on a predicted state of thetracking device (e.g., the object coupled to the tracking device islikely to be useful to the user). In each of these circumstances, theuser is provided with important or useful information before the userrealizes that such information would be important or useful, therebybeneficially improving a user's experience with the tracking device andthe tracking system 100.

Tracking Device Functions Based on User Presence

A user's location, or a user's presence within a geofence or otherpredefined area, can be used to configure the operating mode or state ofan electronic device. For instance, the movement of a user into ageographic area can be used to configure an electronic device within thearea. Examples of such devices include home security systems, homeheating and cooling systems, door locks, computers, routers, televisionset-top boxes, scanning devices (such as tracking device scanningdevices), Bluetooth devices, and the like. FIGS. 12A and 12B illustratean example of configuring an electronic device based on the entry of auser into an area defined by a geographic boundary, according to oneembodiment. In particular, FIG. 12A illustrates a user 1200 outside anarea defined by a geographic boundary 1210, and FIG. 12B illustrates theentry of the user into the geographic boundary. In this example, thegeographic boundary 1210 encloses an area that contains the user's house1220. When the user 1200 is outside of the geographic boundary 1210, anelectronic device 1230 is configured to operate in a first mode. In theembodiment of FIG. 12A, the first mode is an “off” mode, but in otherembodiments, the first mode can be an “on mode”, an “active mode” (e.g.,for a security system), a temperature range (e.g., “between 60 and 65degrees Fahrenheit”), or any other suitable mode of operation. When theuser 1200 enters the geographic boundary 1210, as illustrated in FIG.12B, the electronic device 1230 is configured to operate in a secondmode (such as the “on” mode) in response to the presence of the userwithin the geographic boundary.

In order to detect the absence or presence of a user 1200 within anarea, a tracking system, such as the tracking system 100, can detect theabsence or presence of a tracking device often carried by or within athreshold distance of the user (for instance, a tracking device coupledto the user's keys, a handbag or backpack of the user, or the user'svehicle). As described above, a mobile device (such as a smartphone) ofthe user can receive a transmission from the tracking device and, inresponse, can detect a location of the mobile device (for instance,using location-detection functionality, such as a GPS receiver). Themobile device can then provide the detected location and an identity ofthe tracking device to the tracking system, and the tracking system candetermine the presence or absence of the user based on the providedlocation and tracking device identity.

The geographic boundary 1210 encloses a pre-defined geographic area. Inone embodiment, the user defines the geographic boundary 1210, forinstance, by selecting a center of the boundary, a shape of theboundary, a radius of the boundary, the location for each boundarysegment, and the like. For instance, a user can define a geographicboundary centered on the user's workplace and can specify that thegeographic boundary covers the campus of the workplace. A user can alsodefine the operating mode/function of a device being configured based onthe presence or absence of the user in the geographic boundary. Forinstance, a user can define a geographic boundary, identify a device,define a first operating mode of the device when the user is within thegeographic boundary, and define a second operating mode of the devicewhen the user is outside the geographic boundary.

In addition to the tracking system 100 configuring a device based on auser's absence/presence, a device can configure itself when it detects auser or a tracking device associated with the user, based on the user'sobserved daily routine. In an embodiment, the tracking system 100 candetermine the geographic boundary 1210 based on the observed behaviorand location of the user 1200 without direct input from the user. Forexample, the tracking system 100 can define geographic boundariescentered on the home of a first and second user, based on behavior ofthe first and second user each day after school. Continuing with thisexample, the first user can return directly home most days after school,and thus the tracking system can define a first geographic boundary of afirst radius covering the property on which the home sits. Likewise, thesecond user can often go to a neighbor's house to study, and thetracking system can define a second geographic boundary of a secondradius larger than the first radius for the second user to cover notjust the property on which the house sits but to cover the neighbor'shouse as well. Accordingly, when either the first user returns home orthe second user goes to the neighbor's house on a particular day, afurnace within the home can be activated in order to begin heating thehome, as the tracking system 100 may observe the first user or seconduser doing routinely.

The geographic boundary 1210 may be associated with a time range. Insome embodiments, a user can define a geographic boundary and can definea time range in which the geographic boundary is active. For example, auser can define a geographic boundary associated with the user's homefor the hours of 5 pm to 7 pm (when the user generally arrives home fromwork), and the tracking system 100, in response to detecting the userarriving within the geographic boundary within the time range, canconfigure the operating mode of one or more electronic devices or homesystems. In some embodiments, the tracking system 100 can define ageographic boundary without user input based on a user's historicalbehavior and can define the geographic boundary to be active only duringa time period associated with the user's historical behavior.

In some embodiments, a user 1200 may define multiple geographicboundaries 1210, each associated with a different electronic device. Forexample, a user can define a first geographic boundary associated with afurnace of her house and can define a second, smaller geographicboundary associated with a security system of her house. Accordingly,because furnaces take some time to heat up a house, the furnace turns onas soon as the user crosses the first geographic boundary, and thesecurity system is only de-activated when the user crosses the second,smaller geographic boundary. Such an embodiment both enables the furnacemore time to heat the house, and reduces the period of time during whichthe security system is de-activated.

A device can also configure itself when the user exits the regionbounded by a geographic boundary. For example, because a user does notneed a heated house when they are not home, the furnace may turn itselfoff when the user is not at their house. Therefore, the furnace can beconfigured to turn off if the user is exiting the geographic boundaryinstead of turning on when the user enters the geographic boundary. Thesame principle can be applied to modes of other devices, such as turningon a security system, turning off an oven, and the like if the userleaves their house.

Although a user's house is the associated with the geographic boundary1210 of FIGS. 12A and 12B, in practice, a geographic boundary can becentered on or located at any suitable location or entity. For example,a geographic boundary can be defined based on a user's workplace,school, gym, church, family member's house, a park, and the like.

The electronic device 1230 can be configured to operate in a particularmode based on the presence or absence of the user within a geographicboundary, or based on a location of the user more generally. In someembodiments, the electronic device 1230 is located within the geographicboundary itself, but in other embodiments, the electronic device islocated outside the boundary. The electronic device 1230 can be a deviceconfigured to control temperature, configure a security system, send anotification, turn on/off lights, turn on/off music, scan for trackingdevices, or perform any other suitable function. Some examples of anelectronic device 1230 include a thermostat, a security system, arouter, appliances, lights, a garage door opener, a television orset-top box, a computer, and any other suitable device configured tooperate in one or more modes. In one embodiment, the electronic device1230 is a mobile device 102 associated with the user 1200 (e.g., amobile device configured to provide locations in association with atracking device identity to a tracking system 100 in response todetecting the tracking device). For instance, a mobile device 102 can beconfigured to stop scanning for tracking devices when the user is athome (e.g., and another device can instead scan for tracking devices).Likewise, the mobile device 102 can be configured to operate in a silentor airplane mode after a particular time of day when the user is athome.

Configuring an electronic device 1230 to operate in a particular modebased on the presence or absence of a user can include turning thedevice off or on, putting the device on silent, turning vibration on oroff, or switching to airplane mode, changing the scanning frequency ortransmission frequency or strength of the device, change the operationmode from “active” or “enabled” to “disabled”, and the like. Theelectronic device can be configured to perform a particular functionbased on the presence or absence of a user. For example, a thermostatcan be configured to change temperatures, a door can be unlocked, aset-top box can be configured to record a television program, anapplication can be launched on a computer, and the like. A device can beconfigured to operate in different modes based on the presence orabsence of the user during particular times of the day. For example, auser may only want a coffee maker to make coffee if she goes to heroffice in the morning and may want the coffee maker to remain idle ifshe goes in late to work.

In some embodiments, the electronic device 1230 is a scanning device. Ascanning device is a device configured to scan for tracking devices 106in order to determine if a tracking device is within a proximity of thescanning device. Examples of scanning devices include computers,smartphones and other mobile devices, set-top boxes, and routers. Ascanning device may also be a scanning hub or other specialty devicebuilt into a work station, home, or car. In embodiments in which adifferent scanning device is present (e.g., within a threshold proximityof a user), the scanning functionality of the user's smartphone can bedisabled since the scanning device can perform the function of detectingtracking devices. Such a configuration beneficially saves mobile devicebattery power, since the mobile device is no longer required to scan forthe tracking device.

The tracking system 100 can configure a scanning device to operate in afirst mode when the user 1200 is inside the geographic boundary and asecond mode when the user 1200 is outside the geographic boundary.Configuring the scanning device can include changing the scanningfrequency or duty cycle of the scanning device and enabling or disablingscanning functionality of the scanning device altogether. For instance,when a user is away from home, a scanning device can be configured toscan for tracking devices every 10 seconds, and when the user is athome, the scanning device can be configured to scan for tracking devicesevery 1 second while a smartphone can simultaneously be configured tohalt scanning for tracking devices.

FIG. 13 illustrates a flowchart for a method of configuring anelectronic device based on a location of a user. A tracking system 100receives 1300 a first location of a tracking device 106 from a mobiledevice 102 of a user at a first time. The mobile device 102 isconfigured to provide locations of the tracking device 106 to thecentral tracking device system in response to receiving communicationsfrom the tracking device 106. The tracking system 100 then receives 1310a second location of the tracking device 106 at a second time after thefirst time.

The tracking system 100 accesses 1320 information describing a boundaryassociated with the user and corresponding to a geographic region. Theuser may define the location and contours of the geographic boundary forstorage by the tracking system 100. In response to determining that thefirst location is outside the boundary and the second location is insidethe boundary, the tracking system 100 provides 1330 configurationinstructions to an electronic device associated with the user. Theconfiguration instructions can identify an operating mode that theelectronic device can configure itself into or the function that theelectronic device is supposed to perform. In response to the receivingthe configuration instructions, the electronic device can configureditself to operate in the identified operating mode. In anotherembodiment, the configuration instructions can be provided to theelectronic device in response to determining that the tracking device iswithin the geographic boundary at the first time and then later isoutside the geographic boundary at the second time.

Examples: In some embodiments, the tracking system 100 can sendnotifications to a first user based on a location of a second user. Forexample, the tracking system 100 may notify a user when their child getsto school, if their child gets to school on time, if their child doesnot arrive at school, when their child arrives home, and if their childdoes not arrive home based on the presence or absence of the childwithin a geographic boundary at a predetermined time. Additionally, thetracking system 100 may notify a user if a tracking device 106 leavesthe geographic boundary unexpectedly, for instance a tracking devicecarried by a child leaving a boundary associated with school duringschool hours.

In another example, when a user crosses a geographic boundary aroundtheir house, such that the user moves into the geographic boundary, thethermostat may turn on the heater or the air conditioner, the securitysystem may be disabled, or the oven may turn on. Other examples includeopening/closing the garage door, turning on/off lights in the house,turning on/off sprinklers, turning on/off outdoor lights, orlocking/unlocking the door. In the case where a user crosses thegeographic boundary, such that the user moves outside the geographicboundary, the thermostat may turn off the heater or air conditioner, thesecurity system may be enabled, the outlets in the house may be disabled(i.e., to turn off any heating devices, like a hair straightener), thedog door may be locked/unlocked, or the oven may turn off.

In a different example, when a user crosses a geographic boundary aroundtheir workplace or place of employment, the parking garage door mayopen, the elevator may move to the entrance level, or the user'scomputer monitors may turn on. Other examples include turning on/off theheater or air conditioner, turning on/off the lights in the office, orlocking/unlocking the workplace door. In another example, when a usercrosses a geographic boundary around their school, the attendance systemmay check the user in or the user's locker may unlock/lock.

In other examples, the presence or absence of a user within a geographicboundary can configure a television or set-top box to record a certaintelevision program or movie, can configure a pet food dispensing deviceto dispense pet food, can activate security cameras, or can turn offpower switches/outlets.

FIG. 14 illustrates a flowchart for a method of configuring a scanningdevice based on a location of a user. A tracking system 100 receives1400 a location of a tracking device 106 associated with a user. Themobile device 102 is configured to provide locations of the trackingdevice 106 to the tracking system 100 in response to receivingcommunications from the tracking device 106. The tracking system 100accesses 1410 information describing a boundary corresponding to ageographic region, which, as noted above, may be defined by the user andstored by the tracking system.

The tracking system 100 then determines 1420 if the location of thetracking device 106 is within the geographic boundary. If the device iswithin the boundary, the tracking system 100 provides 1430 a firstconfiguration instruction to the scanning device associated with theuser. If the device is not within the boundary, the tracking system 100provides 1440 a second configuration instruction to the scanning device.For instance, if the user is within the boundary, the firstconfiguration instruction can configure the scanning device to scan at afirst frequency, and if the user is outside the boundary, the secondconfiguration instruction can configure the scanning device to scan at asecond frequency less than the first frequency. In some embodiments, thefirst instruction can configure the scanning device to operate in ascanning mode, and the second instruction can configure the scanningdevice to cease scanning altogether.

Examples: In some embodiments, the tracking system 100 can be used toconfigure a scanning device related to a user. The scanning device mayscan for tracking devices within a user's house, work, car, or otherplaces associated with the user. In some embodiments, the scanningdevice takes over scanning for tracking devices from the user's mobiledevice when the mobile device is within a threshold proximity of thescanning device. For example, when the user enters the geographicboundary associated with the scanning device, the tracking system 100configures the scanning device to scan for tracking devices andconfigures the mobile device to stop scanning for tracking devices tohelp save mobile device battery power. The scanning frequency, dutycycle, and scanning power/strength of the scanning device can be set bythe tracking system 100 based on a user's presence or absence. Forexample, when a user comes home, the scanning device can be configuredto scan every 15 minutes at a lower scanning power, and if the userleaves home, the scanning device can be configured to scan every 2minutes at a high scanning power.

In some embodiments, the scanning device can be configured to scan forparticular behaviors based on the presence or absence of a user. Forinstance, if a user is not at home, the tracking system 100 canconfigure the scanning device to detect any movement of an objectcoupled to a tracking device. If an object moves when no one is at home,the scanning device can inform the tracking system, which in turn caninform the user that the user's house has potentially been broken intoand burglarized. Likewise, when the user returns home, the user islikely to interact with (and thus move) objects coupled to trackingdevices, and thus the tracking system can configure the scanning deviceto ignore detected object movement unless an object moves more than athreshold distance away from the home.

ADDITIONAL CONSIDERATIONS

The foregoing description of the embodiments of the invention has beenpresented for the purpose of illustration; it is not intended to beexhaustive or to limit the invention to the precise forms disclosed.Persons skilled in the relevant art can appreciate that manymodifications and variations are possible in light of the abovedisclosure.

Any of the devices or systems described herein can be implemented by oneor more computing devices. A computing device can include a processor, amemory, a storage device, an I/O interface, and a communicationinterface, which may be communicatively coupled by way of communicationinfrastructure. Additional or alternative components may be used inother embodiments. In particular embodiments, a processor includeshardware for executing computer program instructions by retrieving theinstructions from an internal register, an internal cache, or othermemory or storage device, and decoding and executing them. The memorycan be used for storing data or instructions for execution by theprocessor. The memory can be any suitable storage mechanism, such asRAM, ROM, flash memory, solid state memory, and the like. The storagedevice can store data or computer instructions, and can include a harddisk drive, flash memory, an optical disc, or any other suitable storagedevice. The I/O interface allows a user to interact with the computingdevice, and can include a mouse, keypad, keyboard, touch screeninterface, and the like. The communication interface can includehardware, software, or a combination of both, and can provide one ormore interfaces for communication with other devices or entities.

Some portions of this description describe the embodiments of theinvention in terms of algorithms and symbolic representations ofoperations on information. These algorithmic descriptions andrepresentations are commonly used by those skilled in the dataprocessing arts to convey the substance of their work effectively toothers skilled in the art. These operations, while describedfunctionally, computationally, or logically, are understood to beimplemented by computer programs or equivalent electrical circuits,microcode, or the like. Furthermore, it has also proven convenient attimes, to refer to these arrangements of operations as modules, withoutloss of generality. The described operations and their associatedmodules may be embodied in software, firmware, hardware, or anycombinations thereof.

Any of the steps, operations, or processes described herein may beperformed or implemented with one or more hardware or software modules,alone or in combination with other devices. In one embodiment, asoftware module is implemented with a computer program productcomprising a computer-readable medium containing computer program code,which can be executed by a computer processor for performing any or allof the steps, operations, or processes described.

Embodiments of the invention may also relate to an apparatus forperforming the operations herein. This apparatus may be speciallyconstructed for the required purposes, and/or it may comprise ageneral-purpose computing device selectively activated or reconfiguredby a computer program stored in the computer. Such a computer programmay be stored in a non-transitory, tangible computer readable storagemedium, or any type of media suitable for storing electronicinstructions, which may be coupled to a computer system bus.Furthermore, any computing systems referred to in the specification mayinclude a single processor or may be architectures employing multipleprocessor designs for increased computing capability.

Embodiments of the invention may also relate to a product that isproduced by a computing process described herein. Such a product maycomprise information resulting from a computing process, where theinformation is stored on a non-transitory, tangible computer readablestorage medium and may include any embodiment of a computer programproduct or other data combination described herein.

Finally, the language used in the specification has been principallyselected for readability and instructional purposes, and it may not havebeen selected to delineate or circumscribe the inventive subject matter.It is therefore intended that the scope of the invention be limited notby this detailed description, but rather by any claims that issue on anapplication based hereon. Accordingly, the disclosure of the embodimentsof the invention is intended to be illustrative, but not limiting, ofthe scope of the invention, which is set forth in the following claims.

What is claimed is:
 1. A method for locating a tracking device,comprising: receiving, at a central tracking system, a location of afirst tracking device of a user from a mobile device of the user, themobile device configured to provide the location of the first trackingdevice to the central tracking system in response to receiving acommunication from the first tracking device; receiving, at the centraltracking system, a first location of a second tracking device from ascanning device, the scanning device configured to detect movement of atracking device within a geographic region around the scanning device,the first location of the second tracking device within the geographicregion; receiving, at the central tracking system, a second location ofthe second tracking device from the scanning device, the second locationof the second tracking device within the geographic region and differentfrom the first location; and responsive to the location of the firsttracking device not being within the geographic region, sending, by thecentral tracking system, a notification to the mobile device of theuser, the notification indicating that the second tracking device hasmoved.
 2. The method of claim 1, wherein the scanning device is locatedwithin a home of the user.
 3. The method of claim 1, wherein thescanning device is located within a place of employment of the user. 4.The method of claim 1, wherein the scanning device is a mobile phone. 5.The method of claim 1, wherein the scanning device is a router.
 6. Themethod of claim 1, wherein the scanning device is a television set-topbox.
 7. A system for locating a tracking device, comprising: anon-transitory computer-readable storage medium storing executableinstructions that, when executed by a processor, cause the processor toperform steps comprising: receiving, at a central tracking system, alocation of a first tracking device of a user from a mobile device ofthe user, the mobile device configured to provide the location of thefirst tracking device to the central tracking system in response toreceiving a communication from the first tracking device; receiving, atthe central tracking system, a first location of a second trackingdevice from a scanning device, the scanning device configured to detectmovement of a tracking device within a geographic region around thescanning device, the first location of the second tracking device withinthe geographic region; receiving, at the central tracking system, asecond location of the second tracking device from the scanning device,the second location of the second tracking device within the geographicregion and different from the first location; and responsive to thelocation of the first tracking device not being within the geographicregion, sending, by the central tracking system, a notification to themobile device of the user, the notification indicating that the secondtracking device has moved; and a processor configured to execute theinstructions.
 8. The system of claim 7, wherein the scanning device islocated within a home of the user.
 9. The system of claim 7, wherein thescanning device is located within a place of employment of the user. 10.The system of claim 7, wherein the scanning device is a mobile phone.11. The system of claim 7, wherein the scanning device is a router. 12.The system of claim 7, wherein the scanning device is a televisionset-top box.
 13. A non-transitory computer-readable storage mediumstoring executable instructions for locating a tracking device that,when executed by a processor, cause the processor to perform stepscomprising: receiving, at a central tracking system, a location of afirst tracking device of a user from a mobile device of the user, themobile device configured to provide the location of the first trackingdevice to the central tracking system in response to receiving acommunication from the first tracking device; receiving, at the centraltracking system, a first location of a second tracking device from ascanning device, the scanning device configured to detect movement of atracking device within a geographic region around the scanning device,the first location of the second tracking device within the geographicregion; receiving, at the central tracking system, a second location ofthe second tracking device from the scanning device, the second locationof the second tracking device within the geographic region and differentfrom the first location; and responsive to the location of the firsttracking device not being within the geographic region, sending, by thecentral tracking system, a notification to the mobile device of theuser, the notification indicating that the second tracking device hasmoved.
 14. The non-transitory computer-readable storage medium of claim13, wherein the scanning device is located within a home of the user.15. The non-transitory computer-readable storage medium of claim 13,wherein the scanning device is located within a place of employment ofthe user.
 16. The non-transitory computer-readable storage medium ofclaim 13, wherein the scanning device is a mobile phone.
 17. Thenon-transitory computer-readable storage medium of claim 13, wherein thescanning device is a router.
 18. The non-transitory computer-readablestorage medium of claim 13, wherein the scanning device is a televisionset-top box.